route add报错SIOCADDRT:Network is unreachable解决方案

服务器 重启后无法通过外网访问,此时需要添加路由表项。

添加时出现错误:SIOCADDRT:Network is unreachable

问题描述

错误信息:

1
SIOCADDRT:Network is unreachable

解决方法

这个错误的原因是因为gateway和IP不在一个网段内。

通过ifconfig查找相应添加的device的网段。

如:

1
2
3
4
5
6
7
8
eth0      Link encap:Ethernet  HWaddr 0c:c4:7a:dc:76:aa  
inet addr:202.112.237.33 Bcast:202.112.237.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:226265 errors:0 dropped:0 overruns:0 frame:0
TX packets:15405 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:18275659 (18.2 MB) TX bytes:3133390 (3.1 MB)
Memory:c7220000-c723ffff

那么gateway的数值就应该是202.112.237.1

route命令为:

1
sudo route add default gw 202.112.237.1 dev eth0

PS: 当初就是eth0写成了eth1导致这个错误的发生

参考资料

  • https://www.jianshu.com/p/0bd0c0c7bc73