使用的系统是Debian 7.11

改机器有一张网卡连接内网,一个USB网卡用WIFI连接另一个网络。内网网卡eth0,无线网卡wlan0。

eth0的配置

adress 192.168.1.55
netmask 255.255.255.0
gateway 192.168.1.1


wlan0的配置

wpa-ssid net
wpa-psk 12345678
adress 192.168.0.22
netmask 255.255.255.0
gateway 192.168.0.1


eth0用于外置连接调试口

wlan0连接路由,路由连接公用网络,无线路由已设置好相应的IP。
问题现象:

wlan0,可以ping到连接到路由的ip和机器,可以互访。同样连接到路由的PC可以通过路由访问公网的IP,该机器只能访问,无线路由的内网,也就是192.168.0.x段的机器。

ping 公网IP 返回找不到主机的错误。

From 192.168.1.55 icmp_seq=5 Destination Host Unreachable
From 192.168.1.55 icmp_seq=6 Destination Host Unreachable
From 192.168.1.55 icmp_seq=7 Destination Host Unreachable

使用命令route后

发现default 192.168.1.1 UG

默认的路由定在了192.168.1.1

修改eth0的配置,将gateway 192.168.1.1注释掉。重启。

使用命令route,default 192.168.0.1 UG。
默认路由变成了192.168.0.1,然后ping 公网IP,成功。

总结:

interfaces文件的设置有顺序,会将第一个设置作为默认路由。如果只访问一层网络没有问题,需要通过路由向上级访问时就会找不到目标。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐