centos7 多网卡修改默认路由
最近在virtualbox里搭了一个centos7的虚拟机,但是网络这一块总是有问题。
单网卡下的问题:
1.当我配置连接方式为nat网络地址转换的时候,虚拟机可以访问外网。但是在网络地址转换的情况下虚拟机是没有外部可以访问的ip,在虚拟机上运行的应用如果想在外部访问,需要再配置端口转发。
2.当我配置连接方式为桥接方式的时候,我可以手工为虚拟机指定一个ip,使虚拟机跟本机在同一个网段,外部机器也可以通过该ip访问虚拟机。但是由于网络策略的问题,桥接连接方式下虚拟机又无法正常访问外网。
在以上两种情况下,只能给虚拟机配置双网卡了,nat网卡用来给虚拟机提供外部网络访问能力,桥接网卡使外部网络可以通过固定ip访问到虚拟机。配置了双网卡之后虚拟机的ip信息展示如下:
其中enp0s3是网络地址转换连接方式的网卡,enp0s8是桥接连接方式的网卡。
这里顺便贴一下enp0s8静态ip的配置(其中netmask,gateway直接参照本机相关信息,ip地址随便配置一个没有被使用的ip):
在配置完双网卡之后,外部可以通过给虚拟机指定的ip来访问虚拟机,但是发现虚拟机还是无法访问外网。在查阅资料之后了解到可能是路由问题,虚拟机访问外网的时候可能还是走的桥接网络的网卡。
查看路由:
default就是默认路由,这里看到有两个default,而且排在最前面的默认路由走的是enp0s8这个网卡。意思就是对外网的访问会通过enp0s8这个网卡出去,而这个网卡并不能上外网。找到原因我们直接删掉enp0s8这个默认路由就好了。
删掉这个路由之后访问百度:
在外部网络通过桥接网卡ip地址访问虚拟机也正常。
现在还有一个问题是虚拟机重启之后路由又会变回去。所以需要将 ip route del default via 10.4.56.1 这个命令加到 ~/.bashrc中,每次重启之后会自动运行这个命令,删掉不需要的路由。
以上~
上一篇: jQuery-EasyUI组件的tree扩展方法说明
下一篇: cobbler自动装机服务简介与配置