Mac 터미널에서 개인 IP 주소를 확인하는 방법

5060 단어 TerminalPHPBashMac

가장 쉽게 사설 IP 주소를 확인하는 방법



일부러 터미널에서 명령을 입력하지 않아도, 시스템 환경설정 > 네트워크 > [상세] 버튼 누르기 > TCP/IP 탭 > IPv4 주소의 란에서 간단하게 조사할 수 있지만, 네트워크계의 스킬을 향상시키기 위해서 역시 최소한의 터미널 커맨드를 잘 다루어야 한다는 것이 필자의 지론이다.



터미널에서 개인 IP 주소를 찾는 방법 1



Mac에서 네트워크 상황을 조사하기위한 유명한 명령이라고하면 ifconfig Windows에서 말하는 ipconfig에 해당하는 것이다.
$ ifconfig
lo0: flags=XXXX<UP,LOOPBACK,RUNNING,MULTICAST> mtu XXXXX
    options=3<RXCSUM,TXCSUM>
    inet6 ::1 prefixlen XXX 
    inet 127.0.0.1 netmask 0XXX000000 
    inet6 XXXX::XXXXX prefixlen 64 scopeid XXX 
    nd6 options=1<PERFORMNUD>
gif0: flags=XXXX<POINTOPOINT,MULTICAST> mtu XXXX
stf0: flags=0<> mtu XXXX
en0: flags=XXXX<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu XXXX
    options=27<RXCSUM,TXCSUM,VLAN_MTU,TSO4>
    ether XX:XX:XX:XX:XX:XX 
    nd6 options=1<PERFORMNUD>
    media: autoselect
    status: inactive
en1: flags=XXXX<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu XXXX
    ether XX:XX:XX:XX:XX:XX 
    inet6 XXXX::XXX:XXXX:XXXX:XXXXXXXX prefixlen 64 scopeid XXX 
    inet 192.168.100.103 netmask XXXXXXXXXX broadcast 192.168.100.XXX
    inet6 XXXX:XXXX:XXX:XXXX:XXX:XXXX:XXXX:XXXX prefixlen 64 autoconf 
    inet6 XXXX:XXXX:XXX:XXXX:XXXX:XXXX:XXXX:XXXX prefixlen 64 autoconf temporary 
    inet6 XXXX:XXXX:XXX:XXXX:XXX:XXXX:XXXX:X prefixlen 64 dynamic 
    nd6 options=1<PERFORMNUD>
    media: autoselect
    status: active
p2p0: flags=XXXX<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu XXXX
    ether XX:XX:XX:XX:XX:XX 
    media: autoselect
    status: inactive

위의 명령을 사용하면 불필요한 정보가 너무 많습니다.

사설 IP 주소는 장치 이름 en1의 inet에 있습니다 (이 경우 192.168.100.103).

~ 비공개 IP 주소가 할당된 기기 이름에 대해 ~
· 오래된 연식 Mac의 경우 en1입니다.
· 현재 Mac의 경우 en0입니다.
필요에 따라 후속 명령을 대체하고 싶습니다.

모처럼이므로 스크래핑하여 비공개 IP 주소 부분 만 검색하려고합니다.
$ ifconfig en1 inet
en1: flags=XXXX<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu XXXX
    inet 192.168.100.103 netmask XXXXXXXXXX broadcast 192.168.100.XXX

그리고 조금!

awk 명령을 사용하여 공백으로 구분 된 두 번째 문자열을 얻습니다.
$ ifconfig en1 inet | awk '{print $2}'
flags=XXXX<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST>
192.168.100.103

1행째가 여분이므로 역기로 정규 표현으로 좁히기
$ ifconfig en1 inet | awk '{print $2}' | grep '^192'
192.168.100.103

무사히 프라이빗 IP 주소 취득에 성공!

터미널에서 개인 IP 주소를 찾는 방법 2


ifconfig와 비교하면 정보량이 적지만 실제로는 또 하나, 네트워크 상황을 조사하기위한 유명한 명령이 존재한다. 그것이 networksetup -getinfo Wi-Fi입니다.

그럼 실행해 보자.
$ networksetup -getinfo Wi-Fi
DHCP Configuration
IP address: 192.168.100.103
Subnet mask: 255.255.255.0
Router: 192.168.100.1
Client ID: 
IPv6: Automatic
IPv6 IP address: none
IPv6 Router: none
Wi-Fi ID: XX:XX:XX:XX:XX:XX

확실히 정보량이 적고 사설 IP 주소를 찾기 쉽다.

이전과 마찬가지로 정규식과 awk 명령을 사용하여 검색을 시도합니다.
$ networksetup -getinfo Wi-Fi | grep '^IP address' | awk '{print $3}'
192.168.100.103

무사히 프라이빗 IP 주소 취득에 성공!

사설 IP 주소 사용



필자처럼 PHP로 웹 애플리케이션을 개발할 때 내장 웹 서버를 세우고, 같은 네트워크 내의 다른 머신에서 서버 머신에 접속해 테스트를 할 때 프라이빗 IP 주소를 파악해야 할 경우가 나와 온다.

내장 웹 서버를 설정하는 방법



문서 루트로 이동
$ cd /Library/WebServer/Documents

아래 명령에서도 가능(풀 패스 표기)
$ cd ~/../../Library/WebServer/Documents

내장 웹 서버 구축

예) 사설 IP 주소가 192.168.100.103인 경우
$ php -S 192.168.100.103:8000

좋은 웹페이지 즐겨찾기