동일한 네트워크에 두 대의 컴퓨터가 연결되어 있다고 가정합니다. computer1 및 파일 공유를 통해 computer2 내부를 스누핑 할 수 있음을 알고 있습니다. 그러나 computer2에는 safari에서 localhost : 9091을 입력하여 액세스 할 수있는 흥미로운 내용이 있다고 가정하십시오. (예 : 전송 웹 UI). 액세스하려면 computer1의 ip_address_of_computer2 : 9091을 입력해야합니다.
그러나 computer2를 사용하지 않고 computer2의 IP 주소를 어떻게 알 수 있습니까?
답변
방법 # 1
가장 쉬운 방법은 네트워크 라우터의 관리 페이지에 액세스하는 것입니다. IP 주소를 포함하여 네트워크의 다른 장치에 대한 정보가 있습니다.
방법 # 2
컴퓨터의 네트워크 이름을 알고 있으면 ping
터미널에서 컴퓨터 이름을 지정할 수 있습니다 . 컴퓨터의 IP 주소를 반환합니다.
방법 # 3
컴퓨터의 네트워크 이름을 모르는 경우을 사용하여 수행 할 수있는 또 다른 트릭이 있습니다 ping
. IP 주소와 서브넷 마스크를 찾으십시오. 둘 다 시스템 환경 설정의 네트워크 환경 설정 패널에 표시되어야합니다. IP 주소와 서브넷 마스크를 정렬하고 서브넷 마스크의 0
값을 255
IP 주소의 동일한 상대 위치로 바꿉니다. 예를 들어, 각각 다음 IP 주소와 서브넷 마스크가있는 경우 :
192.168.1.151
255.255.255.0
은 0
당신이 가진 IP 주소의 마지막 필드를 대체 할 수 있도록, 서브넷 마스크의 마지막 필드에 255
그것을 핑 :ping 192.168.1.255
네트워크에서 핑에 응답 할 수있는 모든 장치의 IP 주소로 응답해야합니다.
방법 # 4
마지막 트릭은 터미널 명령을 사용하는 것 arp -a
입니다. 네트워크에 알려진 모든 장치의 IP 및 MAC 주소가 표시됩니다.
이 맥 월드 기사에서 제공 한 마지막 두 가지 요령 .
답변
명령을 입력하십시오
arp -a
모든 연결이 하나씩 표시됩니다.
답변
Q : 네트워크 에있는 다른 컴퓨터 의 IP 주소 를 어떻게 알 수 있습니까?
많은 네트워크
글쎄, 우선 모든 컴퓨터는 아마도 많은 네트워크 에있을 것 입니다 . 이 ifconfig
명령으로 볼 수 있습니다 . 거기에 많은 정보가 있지만 대부분은 압도적이므로 필터링하는 것이 좋습니다.
$ ifconfig | grep -E '^[a-z0-9]|inet '
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet 127.0.0.1 netmask 0xff000000
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet 192.168.0.101 netmask 0xffffff00 broadcast 192.168.0.255
en1: flags=963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX> mtu 1500
en2: flags=963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX> mtu 1500
p2p0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 2304
awdl0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1484
bridge0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet 192.168.2.1 netmask 0xffffff00 broadcast 192.168.2.255
utun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 2000
utun1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
inet 172.141.0.10 --> 172.141.0.9 netmask 0xffffffff
en5: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
inet 169.254.146.193 netmask 0xffff0000 broadcast 169.254.255.255
bridge100: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet 192.168.3.1 netmask 0xffffff00 broadcast 192.168.3.255
왼쪽 정렬 된 줄의 첫 번째 필드는 네트워크 인터페이스 이름입니다. 당신은 무선 랜 아마 것입니다 en0
. AWS에 대한 TunnelBlick VPN은 utun1
입니다. 내 시스템 환경 설정> 공유> 인터넷 공유 bridge100
RaspberryPi 용으로 생성 이더넷 동글을 통해 MacBook Pro에서 인터넷을 사용하고 있습니다.
IPv4 가정
IP 주소 를 요청했기 때문에 IPv4 주소가 중요하다고 생각합니다. “inet”(공백 포함)을 사용하여 IPv6에 대한 “inet6″항목을 차단했습니다. IPv6을 원한다면 나보다 네트워킹에 대해 더 많이 알고 아마도 질문을해야합니다.
호스트 찾기
그것에 집중 bridge100
하고 약간의 Google 트래픽을 가져 오 겠습니다 . 많은 사람들이 네트워크에 있거나 인터넷 공유 를 통해 테 더링 된 헤드리스 컴퓨터 ( RaspberryPi 와 같은 ) 에 SSH 또는 RDC를 원할 때이 상황에 처하게됩니다 . 장치와의 연결 기록 (arp 테이블)이없는 경우 특히 어렵습니다. 이를 위해 마지막 숫자가 “0/24″로 대체 된 bridge100 inet (192.168.3.1)의 값인을 사용할 수 있습니다 . 그러나 nmap은 OSX에서 표준이 아니므로 homebrew 와 함께 설치할 수 있습니다 .sudo nmap -sn 192.168.3.0/24
$ brew install nmap
Warning: nmap-7.31 already installed
$ sudo nmap -sn 192.168.3.0/24
Password:
Starting Nmap 7.31 ( https://nmap.org ) at 2016-11-21 22:03 EST
Nmap scan report for 192.168.3.6
Host is up (0.00025s latency).
Nmap scan report for 192.168.3.1
Host is up.
Nmap done: 256 IP addresses (2 hosts up) scanned in 2.08 seconds
그로부터 당신은 내 RaspberyPi가 192.168.3.6
어떤 이유로 IP 를 얻었다 고 가정 할 수 있습니다 . 내가 마지막으로 연결했을 때 나는 다른 서브넷에 있었고 그것을 얻었다 192.168.2.3
. 그 nmap이 트릭은 훨씬 더 입력보다 ping 192.168.3.2
… ping 192.168.3.6
당신이 그것을 찾을 때까지.
도움이 되길 바랍니다.
답변
호스트 이름이 있고 mDNS (Mac 환경에서는 Bonjour)를 사용한다고 가정 할 때 IP 주소 정보를 검색하기 위해 아직 언급되지 않은 몇 가지 다른 도구가 있습니다. 다르게 구성하지 않는 한 로컬 네트워크 이름은 host-name.local
초기 예에서 찾고자하는 형식입니다.computer2.local
첫번째:
dscacheutil -q host -a name <host-name>.local
예를 들면 다음과 같습니다.
% dscacheutil -q host -a name computer2.local
name: computer2.local
ip_address: 10.0.1.6
또 다른 유용한 도구는 dig
( dig google.com
예를 들어 시도 ), 몇 가지 특수 매개 변수를 사용하여 로컬 네트워크의 mDNS 노드를 쿼리하는 데 사용할 수 있습니다.
% dig @224.0.0.251 -p 5353 <host-name>.local
% dig @224.0.0.251 -p 5353 -x <ip-address>
IP 주소 만 가져 오려면 dig
다음을 시도하십시오.
% dig +short @224.0.0.251 -p 5353 <host-name>.local
답변
이 스크립트는 당신이 정말로 찾고있는 것을 제공하고 nmap이 설치되어 있어야합니다. 호스트가 핑 프로브에 응답하지 않으면 nmap은 여전히 호스트를 찾고 다른 도구는 그렇지 않습니다.
#!/bin/bash
i="en1" # edit this to fit your Network interface
cidr=$(while read y; do echo ${y%.*}".0/$(m=0; while read -n 1 x && [ $x = f ]; do m=$[m+4]; done < <(ifconfig $i | awk '/mask/ {$4=substr($4,3); print $4}'); echo $m )"; done < <(ifconfig $i | awk '/inet[ ]/{print $2}') | head -n 1 | sed s/addr://g | sed 's/\/0//g')
myip=`ifconfig $i | grep "inet " | awk 'NR==1 {print $2}' | sed s/addr://g`
set -x
sudo nmap -n -T4 -PN -p9091 --exclude "$myip" "$cidr"
이 스크립트를 다른 이름으로 저장하고 다음 lookup.sh
과 같이 호출하십시오 (영어로 전환).
LANG=c bash lookup.sh
답변
netstat를 사용하여 네트워크 주소를 표시 할 수도 있습니다.
roger.moore@WKSTCAL0141 ~
$ netstat -n
Active Connections
Proto Local Address Foreign Address State
TCP 127.0.0.1:11235 127.0.0.1:49184 ESTABLISHED
TCP 127.0.0.1:49155 127.0.0.1:49156 ESTABLISHED
TCP 127.0.0.1:49156 127.0.0.1:49155 ESTABLISHED
TCP 127.0.0.1:49184 127.0.0.1:11235 ESTABLISHED
TCP 192.168.10.131:445 192.168.10.119:52624 ESTABLISHED
TCP 192.168.10.131:1433 192.168.10.2:60866 ESTABLISHED
TCP 192.168.10.131:1433 192.168.10.119:52775 ESTABLISHED
TCP 192.168.10.131:3389 192.168.10.119:54473 ESTABLISHED
TCP 192.168.10.131:49154 192.168.10.119:52796 ESTABLISHED
TCP 192.168.10.131:49182 192.168.10.9:52230 ESTABLISHED
TCP 192.168.10.131:49247 192.168.10.6:445 ESTABLISHED
TCP 192.168.10.131:49432 192.168.10.4:1106 ESTABLISHED
TCP 192.168.10.131:49440 192.168.10.4:1106 ESTABLISHED
TCP 192.168.10.131:49451 192.168.10.6:1025 ESTABLISHED
TCP 192.168.10.131:55100 192.168.10.2:445 ESTABLISHED
TCP 192.168.10.131:64558 192.168.10.20:135 TIME_WAIT
TCP 192.168.10.131:64559 192.168.10.20:49158 TIME_WAIT
TCP 192.168.10.131:64566 192.168.10.100:135 TIME_WAIT
TCP 192.168.10.131:64575 192.168.10.100:59811 TIME_WAIT
TCP 192.168.10.131:64581 192.168.10.41:139 TIME_WAIT
TCP 192.168.10.131:64582 192.168.10.3:5357 TIME_WAIT
TCP 192.168.10.131:64585 192.168.10.61:3910 TIME_WAIT
TCP 192.168.10.131:64587 192.168.10.65:3910 TIME_WAIT
TCP 192.168.10.131:64588 192.168.10.9:139 TIME_WAIT
TCP 192.168.10.131:64589 192.168.10.135:2869 ESTABLISHED
TCP 192.168.10.131:64593 192.168.10.6:135 TIME_WAIT
TCP 192.168.10.131:64594 192.168.10.6:1025 TIME_WAIT
TCP 192.168.10.131:64599 192.168.10.100:59811 TIME_WAIT
답변
IP를 사용하여 이름을 알고 싶은 경우 :
http://runakay.blogspot.com/2013/12/obtaining-computer-name-from-ip-address.html