리눅스 ip 유틸리티 사용법 : IPv4/IPv6 라우팅 테이블 관리
- 리눅스(Linux) 활용
- 2020. 3. 15.
리눅스 ip 유틸리티 사용법 : IPv4/IPv6 라우팅 테이블 관리
ip 유틸리티를 이용하면 각 네트워크 인터페이스의 정보를 설정하거나 확인할 수 있으며, 그 외에도 라우팅(Routing) 테이블, 이웃정보(Neighbor) 테이블 등 많은 정보를 제어할 수 있다.
본 글에서는 ip 유틸리티를 이용하여 IPv4/IPv6 라우팅 테이블을 관리하는 방법을 설명한다.
그 외 ip 유틸리티의 기능 및 사용법은 다음 글에 설명되어 있다.
본 글의 예제에서 사용된 리눅스는 Ubuntu 18.04 버전이다.
ip 유틸리티 설치하기
만약 ip 유틸리티가 설치되어 있지 않으면 다음과 같이 apt install 이나 apt-get install 명령을 사용하여 설치할 수 있다.
apt update -y && apt upgrade -y
apt install iproute2
IPv4 라우팅 테이블 등록 및 제거, 확인하기
route add 옵션을 사용하여 라우팅 테이블에 IPv4 라우팅 경로(=게이트웨이)를 등록할 수 있다.
ip route add <IPv4 network>/<prefix length> via <IPv4 address> dev <interface name>
route del 옵션을 사용하여 라우팅 테이블에 등록된 IPv4 라우팅 경로를 제거할 수 있다.
ip route del <IPv4 network>/<prefix length>
route show 옵션을 사용하여 IPv4 라우팅 테이블 내용을 확인할 수 있다.
ip route show
다음은 eth0 네트워크 인터페이스에 대해 200.0.0.0/24 네트워크로 향하는 게이트웨이 IPv4 주소인 172.17.0.1을 등록, 제거, 확인하는 동작의 예이다.
root@113845eec1e7:/# ip route show
172.17.0.0/16 dev eth0 proto kernel scope link src 172.17.0.2
root@113845eec1e7:/#
root@113845eec1e7:/# ip route add 200.0.0.0/24 via 172.17.0.1 dev eth0
root@113845eec1e7:/#
root@113845eec1e7:/# ip route show
172.17.0.0/16 dev eth0 proto kernel scope link src 172.17.0.2
200.0.0.0/24 via 172.17.0.1 dev eth0
root@113845eec1e7:/#
root@113845eec1e7:/# ip route del 200.0.0.0/24
root@113845eec1e7:/#
root@113845eec1e7:/# ip route show
172.17.0.0/16 dev eth0 proto kernel scope link src 172.17.0.2
root@113845eec1e7:/#
route add default 옵션을 사용하여 라우팅 테이블에 IPv4 디폴트 게이트웨이를 등록할 수 있다.
ip route add default via <IPv4 address>
route del default 옵션을 사용하여 라우팅 테이블에 등록된 IPv4 디폴트 게이트웨이를 제거할 수 있다.
ip route del default
다음은 디폴트 게이트웨이 IPv4 주소인 172.17.0.254를 등록, 제거, 확인하는 동작의 예이다.
root@113845eec1e7:/# ip route show
172.17.0.0/16 dev eth0 proto kernel scope link src 172.17.0.2
root@113845eec1e7:/#
root@113845eec1e7:/# ip route add default via 172.17.0.254
root@113845eec1e7:/#
root@113845eec1e7:/# ip route show
default via 172.17.0.254 dev eth0
172.17.0.0/16 dev eth0 proto kernel scope link src 172.17.0.2
root@113845eec1e7:/#
root@113845eec1e7:/# ip route del default
root@113845eec1e7:/#
root@113845eec1e7:/# ip route show
172.17.0.0/16 dev eth0 proto kernel scope link src 172.17.0.2
root@113845eec1e7:/#
IPv6 라우팅 테이블 등록 및 제거, 확인하기
-6 route add 옵션을 사용하여 라우팅 테이블에 IPv6 라우팅 경로(=게이트웨이)를 등록할 수 있다.
ip -6 route add <IPv6 network>/<prefix length> via <IPv6 address> dev <interface name>
-6 route del 옵션을 사용하여 라우팅 테이블에 등록된 IPv6 라우팅 경로를 제거할 수 있다.
ip -6 route del <IPv6 network>/<prefix length>
-6 route show 옵션을 사용하여 IPv6 라우팅 테이블 내용을 확인할 수 있다.
ip -6 route show
다음은 eth0 네트워크 인터페이스에 대해 3ffe:ffff:0:f101::/64 네트워크로 향하는 게이트웨이 IPv6 주소인 2001:0db8:0:f101::1을 등록, 제거, 확인하는 동작의 예이다.
root@113845eec1e7:/# ip -6 route show
2001:db8:0:f101::/64 dev eth0 proto kernel metric 256 pref medium
fe80::/64 dev eth0 proto kernel metric 256 pref medium
root@113845eec1e7:/#
root@113845eec1e7:/# ip -6 route add 3ffe:ffff:0:f101::/64 via 2001:0db8:0:f101::1 dev eth0
root@113845eec1e7:/#
root@113845eec1e7:/# ip -6 route show
2001:db8:0:f101::/64 dev eth0 proto kernel metric 256 pref medium
3ffe:ffff:0:f101::/64 via 2001:db8:0:f101::1 dev eth0 metric 1024 pref medium
fe80::/64 dev eth0 proto kernel metric 256 pref medium
root@113845eec1e7:/#
root@113845eec1e7:/# ip -6 route del 3ffe:ffff:0:f101::/64
root@113845eec1e7:/#
root@113845eec1e7:/#
root@113845eec1e7:/# ip -6 route show
2001:db8:0:f101::/64 dev eth0 proto kernel metric 256 pref medium
fe80::/64 dev eth0 proto kernel metric 256 pref medium
root@113845eec1e7:/#
-6 route add default 옵션을 사용하여 라우팅 테이블에 IPv6 디폴트 게이트웨이를 등록할 수 있다.
ip -6 route add default via <IPv6 address>
-6 route del default 옵션을 사용하여 라우팅 테이블에 등록된 IPv6 디폴트 게이트웨이를 제거할 수 있다.
ip -6 route del default
다음은 디폴트 게이트웨이 IPv6 주소인 2001:0db8:0:f101::fe를 등록, 제거, 확인하는 동작의 예이다.
root@113845eec1e7:/# ip -6 route show
2001:db8:0:f101::/64 dev eth0 proto kernel metric 256 pref medium
fe80::/64 dev eth0 proto kernel metric 256 pref medium
root@113845eec1e7:/#
root@113845eec1e7:/# ip -6 route add default via 2001:0db8:0:f101::fe
root@113845eec1e7:/#
root@113845eec1e7:/# ip -6 route show
2001:db8:0:f101::/64 dev eth0 proto kernel metric 256 pref medium
fe80::/64 dev eth0 proto kernel metric 256 pref medium
default via 2001:db8:0:f101::fe dev eth0 metric 1024 pref medium
root@113845eec1e7:/#
root@113845eec1e7:/# ip -6 route del default
root@113845eec1e7:/#
root@113845eec1e7:/# ip -6 route show
2001:db8:0:f101::/64 dev eth0 proto kernel metric 256 pref medium
fe80::/64 dev eth0 proto kernel metric 256 pref medium
root@113845eec1e7:/#
파트너스 활동을 통해 일정액의 수수료를 제공받을 수 있음
'리눅스(Linux) 활용' 카테고리의 다른 글
error while loading shared libraries 현상 해결방법 (1) | 2022.03.13 |
---|---|
dos2unix - 텍스트 파일의 줄 구분자(Line separator) 변경 (0) | 2021.12.28 |
iperf3 유틸리티를 이용한 장치간 네트워크 Throughput 측정하기 (0) | 2021.02.11 |
우분투(Ubuntu) 리눅스에 네트워크 관련 유틸리티 설치하기 (0) | 2020.03.19 |
리눅스 ip 유틸리티 사용법 : IPv4/IPv6 주소 관리 (0) | 2020.03.14 |
우분투(Ubuntu) 리눅스에 ifconfig 설치하기 (0) | 2020.03.06 |
리눅스 시스템에서 IPv6 주소 설정/확인하기 (0) | 2020.03.06 |
xxd : 파일의 내용을 16진수 형식으로 확인(hex dump) (0) | 2020.02.10 |