
之前在用adsl上网的时候就是用一个soho路由器来自动拨号的,然后自己可以用本子和大机器同时上网。在设置linux的路由时,一般就是用route命令加一个默认的网关就可以了,如:
route add default gw 192.168.1.1
然后就可以上网了。当然这里的192.168.1.1是路由器的局域网ip了。
最近无意中测试调整linux的路由的时候发现一些讨厌而奇怪的问题。比如:我如果将正常的路由删掉,用下列命令:
route del default
就删除了默认的路由路径。然后我再手动添加一次,还是用上面的命令。这样做了之后用route命令查看的时候总是要停一会儿才能将kernel的路由表打印出来。虽然最终打印出来的route table和第一次route add之后的结果是一样的,但nslookup是不能够成功的。这是奇怪之一。
奇怪之二就是:如果这个时候我用fc4的网络设置工具system-config-network来设置一下,在eth0的配置文件编辑界面里面指定DNS,然后激活之。这样就又OK了。奇怪。
ps:我一样的在大机器和本子上装的fc4,一样的设置,一样的locale但是本子上的中文显示效果和大机器又不一样,真是印证了那句话呀:所谓每一套linux都是有自己的个性的。
在本子上用无线网络的时候也是用这个system-config-network工具来设置激活的。如果手动设置的话,dhcp的无线网络无法激活。我现在疑惑的就是这个system-config-network是用什么机制来纠正错误达到正确设置网络的目的的呢?
如果不用system-config-network来设置一下的时候,甚至只是用route添加的路由都不能正常工作。
郁闷!
现在发现,如果系统起动的时候没有插网线那么这些设置就不会起作用了。就算后来把网线插好也不起作用。这个特性有点傻了,是哪里的设置问题呢?难道是内核编译的时候哪里有参数设置的不对么?
这个问题真的有点傻。希望能快点搞定。