
서버(ubuntu)에서 네트워크를 사용하다 보면 인터넷이 안될 경우가 있다.
이 경우에 사용하면 좋을 명령어!
route -nex-linux)
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 12.34.5.6 0.0.0.0 UG 100 0 0 eth0
111.0.0.0 192.168.0.1 255.0.0.0 UG 600 0 0 wlan0
192.168.0.3 0.0.0.0 0.0.0.0 UG 600 0 0 enp4s0
| 항목명 | 내용 |
|---|---|
| Destination | 최종 접근 가능한 네트워크 대역 |
| Gateway | 통하게 되는 네크워크 |
| Genmask | 목적지 네트워크의 넷마스크 주소 (목적지IP와 Genmask를 AND 연산한 결과가 목적지 네트워크임) |
| Flags | 해당 경로에 대한 정보를 알려주는 기호/ U - up, H - 목적지 Host, G - 게이트웨이 사용 |
| Metric | 목적지 네트워크까지의 거리 (낮을 수록 높은 우선순위) |
| Ref | 경로를 참조한 횟수 |
| Use | 경로를 탐색한 횟수 |
| Iface | 사용중인 인터페이스 (하드웨어 슬롯) |
다음의 예시테이블에선 우선순위가 높은 네트워크부터 나열해보면 다음과 같다.
네트워크에선 Prefix가 큰 순서부터 우선순위를 가진다.
wlan0의 경우 Prefix가 8이므로 우선순위를 가짐
다음으론 metric이 낮은 순으로 우선순위를 가진다.
따라서 다음과 같은 우선순위를 가진다.
그리고 enp4s0의 경우 Gateway가 0.0.0.0이므로 내부망과 소통한다.
게이트웨이에서 0.0.0.0 값을 가지는 것은 해당 줄은 내부망으로 연결되어 있어 외부 네트워크로 나갈 게이트웨이가 없다는 표현
| 네트워크 | 특징 |
|---|---|
| 192.168.0.1(wlan0 interface) | 111.0.0.0과 소통 가능 Genmask와 Gateway의 곱 |
| 12.34.56.7(eth0 interface) | 정해지지 않은 목적지 즉 내부와 소통 |
| 0.0.0.0(enp4s0) | 정해지지 않은 네트워크 게이트명(즉 모르겠는 경우 통과) |
Ex) 8.8.8.8 의 주소로 Packet을 보낸다고 가정할 경우
Tip) mac : netstat -nr을 통해 route table확인 가능
route add default gw [default gateway] dev [인터페이스명]
route add -net [ip주소] netmask [netmask 주소] dev [인터페이스명]
route del -net [ip주소] netmask [netmask 주소] dev [인터페이스명]
sudo ifmetric [interface name>] [metric number]
sudo ifup eth0
sudo ifdown eth0