这个问题讲真也是比较奇怪的,反正最终原因我是搞不清楚,但是起码能解决了,所以在这记录下,省得有其他人也被坑(我还以为是系统问题,重装了好多次...)
因为某些原因不想用自己那堆/30的IP,所以我单独买了一个IP拿来开小鸡,准备放点小东西,所以这可能也是问题的由来了(猜测),总之,我就这么创建了一个虚拟MAC,然后把VM的网卡配置为这个MAC并开始安装系统,这个过程还是挺正常的,除了在配置网络时选择手动配置,填入的网关被黄色高亮了,我才意识到可能会出问题。但是以往我这么配置的时候并没有遇到啥错误,所以也就一头雾水的继续下去了。
OK,一切顺利,安装完成,重启,恩,然后我尝试使用XShell连接,发现不通。继续从控制台访问,发现系统已经启动正常了,登陆后发现无网络,这特么就很尴尬了。ifconfig输出一切正常,然后顺手route -n看了眼路由?????
咋就个169.254.0.0的辣鸡路由?我的0.0.0.0/0捏?????懵逼,尝试使用service重启网络,然后……特么还报错network unreachable了,这这这,我也是醉了,去看了下ifcfg-eth0中的配置,好像没错啊,这很不给面子啊。于是,我手动加路由
ip route add default via GATEWAY dev eth0
然后...继续报错SIOCADDRT: Network is unreachable ,这尼玛,我母鸡都是这个网关你跟我说不通,interesting哦
换个方式
ip route add default dev eth0
然后竟然通了!
ip route change default via GATEWAY dev eth0
这下也没有报错了,喵喵喵喵喵?
真是有意思了,网上搜了一圈都说要么在ifcfg-eth0中添加GATEWAY=x.x.x.x(然而我本来就有),要么说这是你网关写错了(然而并不可能),这就很尴尬啊,没办法咯
由于修改的路由会被network的重启刷新掉,所以必须找个办法让修改默认路由的命令跟着network一起apply
所以,我们在/etc/sysconfig/network-scripts/ 下新建route-eth0
vi /etc/sysconfig/network-scripts/route-eth0 #之所以先添加一个网关的路由是因为在这个文件中只能选择添加,而不能修改路由,所以无法使用上面的先add然后change的方式 #之所以无法直接运行最上面那条命令,我估计是因为网关的IP本身没有路由,所以我们先对网关的IP加个路由,然后再添加默认路由 GATEWAY/32 dev eth0 default via GATEWAY dev eth0
然后继续使用service重启network,然后一切正常,重启之后依旧没有问题。就这么解决咯
文章评论