리눅스
[draft] 리눅스에서 기본 게이트웨이를 사용하는 로컬 IP 주소 확인하기
SangChul Dot Kr Blog
2026. 1. 26. 20:58
리눅스에서 기본 게이트웨이를 사용하는 로컬 IP 주소 확인하기
ifconfig 출력 확인
ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 65535
inet 172.17.0.2 netmask 255.255.0.0 broadcast 172.17.255.255
ether 02:42:ac:11:00:02 txqueuelen 0 (Ethernet)
RX packets 3560 bytes 27641426 (27.6 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1906 bytes 133847 (133.8 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
- eth0 : 실제 네트워크 통신에 사용되는 인터페이스
- lo : 루프백 인터페이스 (127.0.0.1)
ifconfig 기반 IP 주소 추출
grep + awk 사용
ifconfig | grep "inet" | grep "broadcast" | awk '{print $2}'
172.17.0.2
awk 단독 사용(더 간결)
ifconfig | awk '/inet .*broadcast/ {print $2}'
172.17.0.2
ip 명령어 기반 IP 주소 추출(권장)
특정 인터페이스(eth0)의 IP 확인
ip addr show dev eth0 | awk '/inet / {print $2}' | cut -d '/' -f 1
172.17.0.2
기본 게이트웨이를 사용하는 IP 자동 추출(추천)
실무에서는 기본 게이트웨이를 사용하는 인터페이스의 IP를 추출하는 방식이 가장 안전합니다.
ip route get 1.1.1.1 | awk '{print $7}'
또는
ip route get 1.1.1.1 | grep -oP 'src \K\S+'
172.17.0.2