最近在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中,每次重启之后会自动运行这个命令,删掉不需要的路由。

以上~

centos7 多网卡修改默认路由的更多相关文章

  1. Centos7.6 双网卡,修改默认路由

    centos修改默认路由 需求:服务器有两个网卡,一个是内网网卡,一个是外网网卡,但是默认的路由是内网: route -n 列出所有路由: 删除默认的路由: route del default gw ...

  2. centos7网口添加IP,修改默认路由永久地址生效

    1永久增加ip地址和路由 网卡永久添加ip地址 注释:ens192为管理地址网卡,请根据实际情况进行修改,网关以192.168.160.1为例 复制一份网卡配置文件命名为ifcfg-ens192:1 ...

  3. Centos双网卡配置默认路由

    Centos6.5 双网卡,我们只需要一个默认路由,如果两个都有或都没有会有一系列的问题 [root@centos]# vi /etc/sysconfig/network修改以下内容NETWORKIN ...

  4. C# Area区域配置,修改默认路由

    1.右键项目新建文件夹 Areas 2.先把项目分类包好,建两个文件夹,放Controller和View,Model也可以放在这里 因为项目启动默认打开的是Home/Index ,我把它放在了Webs ...

  5. shell实现centos7双网卡修改网卡名eth0,eth1,并设置网络

    #!/bin/bash interface1=`ls /sys/class/net|grep en|awk 'NR==1{print}'` interface2=`ls /sys/class/net| ...

  6. Centos7修改默认网卡名(改为eth0)以及网卡启动报错RTNETLINK answers: File exists处理

    安装好centos7版本的系统后,发现默认的网卡名字有点怪,为了便于管理,可以手动修改.下面对centos7版本下网卡重命名操作做一记录:1)编辑网卡信息[root@linux-node2~]# cd ...

  7. CentOS7修改默认启动级别

    如上个随笔所言,Linux分为7个启动级别: 0 - 系统停机状态 1 - 单用户工作状态 2 - 多用户状态(没有NFS) 3 - 多用户状态(有NFS) 4 - 系统未使用,留给用户 5 - 图形 ...

  8. CentOS7系统下GitLab的安装、汉化、修改默认端口、开启发送邮箱

    一.centos7.4 下安装及汉化 =============================================== 2017/11/12_第6次修改                  ...

  9. Centos7多内核情况下修改默认启动内核方法

    1.1  进入grub.cfg配置文件存放目录/boot/grub2/并备份grub.cfg配置文件 [root@linux-node1 ~]# cd /boot/grub2/ [root@linux ...

随机推荐

  1. 移动Web开发与适配笔记

    项目要是适配手机端,想透彻的把相关内容弄清楚,现在总结一下. 一.移动端开发有如下特点: 1.跑在手机端的web 页面就是h5页面 2.具有跨平台性(web 安卓 iOS都适应) 3.基于webvie ...

  2. C#读写txt文件的方法

    1.添加命名空间 System.IO; System.Text; 2.文件的读取 #region 读取TXT文本文件 /// <summary> /// FileStream读取文本文件 ...

  3. js日期格式转化

    如果出现日期格式: /Date(1442742059253)/ 可用下面js方法转化 function ChangeDateFormat(cellval) {        var date = ne ...

  4. agc027D - Modulo Matrix(构造 黑白染色)

    题意 题目链接 构造一个\(n * n\)的矩阵,要求任意相邻的两个数\(a,b\),使得\(max(a,b) \% min(a,b) \not = 0\) Sol 我的思路: 假设\(mod = 1 ...

  5. 织梦channelartlist标签内使用currentstyle

    找到文件\include\taglib\channelartlist.lib.php 找到代码 $pv->Fields['typeurl'] = GetOneTypeUrlA($typeids[ ...

  6. js获取农历日期【转】

    var CalendarData=new Array(100); var madd=new Array(12); var tgString="甲乙丙丁戊己庚辛壬癸"; var dz ...

  7. ES7的Async/Await的简单理解

    Async/Await 的个人见解 正文: async,顾名思义,一个异步执行的功能,而 await 则是配合 async 使用的另一个关键字,也是闻字识其意,就是叫你等待啦! 二者配合食用效果更佳哦 ...

  8. Linux CentOS下部署Java Web项目

    本文讲解如何在Linux CentOS下部署Java Web项目的步骤. 一.环境准备: (1)Linux CentOS (2)apache-tomcat-9.0.10 (3)XShell 二.启动t ...

  9. HCNA配置接口IP地址

    1.拓扑图 2.R1配置 The device is running! <Huawei>sys <Huawei>system-view Enter system view, r ...

  10. 洛谷 P1215 [USACO1.4]母亲的牛奶 Mother's Milk

    题目描述 农民约翰有三个容量分别是A,B,C升的桶,A,B,C分别是三个从1到20的整数, 最初,A和B桶都是空的,而C桶是装满牛奶的.有时,农民把牛奶从一个桶倒到另一个桶中,直到被灌桶装满或原桶空了 ...