为了宿主机和虚拟机可以很好的通信,当然是选择桥接网络啦!!!

话不多说

===========================配置桥接网络==========================

虚拟机虽然能够上网了,但是宿主机并不能与虚拟机通信,这给开发调试带来了很多的困难。我们希望的是,可以用ssh连上虚拟机。这就要求虚拟机就像一台物理机一样,与宿主机存在于同一个网段内。

首先,在宿主机上,安装必要的工具(为了tunctl命令):

以下命令均是在su下进行若是认证失败,请输入sudo passwd root 进行密码更新重新进入su

 apt-get install uml-utilities

接着,创建一张虚拟TUN网卡:

 tunctl -t tap0 -u lfc

这里的lfc换成你的Linux用户名。然后,将网卡设置为任何人都有权限使用:

 chmod 0666 /dev/net/tun

之后,为tap0网卡设置一个IP地址,不要与真实的IP地址在同一个网段。比如我的真实IP地址是192.168.1.2(输入ifconfig -a 查看),那么我就给tap0设置192.168.2.1:

 ifconfig tap0 192.168.2.1 up

宿主机需要为虚拟机开启IP数据包转发,即在192.168.1.*网段和192.168.2.*网段转发数据:

 echo 1 > /proc/sys/net/ipv4/ip_forward   #可能sudo也会权限不够,在su以后执行即可
iptables -t nat -A POSTROUTING -j MASQUERADE
宿主机的配置到此结束。
然后启动虚拟机
有图形的直接进去,没有的命令进去。
进入虚拟机以后:
ifconfig -a

可以看到ens3网卡,但是没有启用。给它配置一个IP地址,比如192.168.2.2,只有与宿主机的tap0网卡在同一网段即可:

ifconfig ens3 192.168.2.2 up
注:若是其他名称就改为相应的名称,若是已经启动了,就是有了相应的ip地址,则不需要进行这一步(配置ip地址这一步)

之后就能发现,宿主机与虚拟机可以相互ping通了!但是此时,虚拟机还不能上外网,因为虚拟机缺少网关。现在把虚拟机的tap0的地址,192.168.2.1,设置为虚拟机的网关:

route add default gw 192.168.2.1
上面这步可以不做!!!!

这样,也可以ping通外网了,比如ping 115.239.211.112。但是ping www.baidu.com却不行,因为缺少DNS服务器!现在就把8.8.8.8指定为虚拟机的DNS服务器:

 vim /etc/resolv.conf
若是需要apt-get install vim 却发现下载不了 可以用 vi /etc/resolv.conf

尽管文件警告说不要手工编辑,但是我临时用用也就无所谓,追加一行:

nameserver 8.8.8.8

写入文件之后,DNS立即生效了。现在,虚拟机既能上外网,又能与宿主机通信了

感谢博主

https://zhoujianshi.github.io/articles/2018/%E5%AE%89%E8%A3%85qemu-kvm%E4%BB%A5%E5%8F%8A%E9%85%8D%E7%BD%AE%E6%A1%A5%E6%8E%A5%E7%BD%91%E7%BB%9C/index.html
的分享

在qemu-kvm配置桥接网络的更多相关文章

  1. docker 配置桥接网络

    2.5 docker配置桥接网络(上): 为了使本地网络中的机器和Docker 容器更方便的通信,我们经常会有将Docker容器 配置到和主机同一网段的需求. 这个需求其实很容器实现, 我们只需要将D ...

  2. VirtualBox安装RHEL之后配置桥接网络

    VirtualBox安装RHEL之后配置桥接网络 1 如果主机是Intel (R) Ethernet Connection I217-LM上网的: 2 如果主机是无线上网的, 如ipconfig显示如 ...

  3. Error【0003】:配置桥接网络报错

    1.1 问题背景 在配置cosole宿主机的桥接网络环境时,在修改完/etc/sysconfig/ifcg-ethx和/etc/sysconfig/ifcg-brx后,执行service networ ...

  4. QEMU命令配置虚拟机网络的用户模式

    QEMU缺省使用“-net nic-net user”参数为客户机配置网络,提供了一种用户模式( user-mode)的网络模拟.使用用户模式的客户机可以连通宿主机及外部网络.用户模式网络完全由QEM ...

  5. linux中配置桥接网络,让虚拟机能够上网

    使用桥接模式最主要的目的就是让虚拟机也能上网,从而有了这篇文章. 1.设置虚拟机的网络连接方式 在设置虚拟机网线的连接方式的时候,注意第一个选择桥接模式,第二个界面名称必须使用和宿主机相同的网卡,然后 ...

  6. CentOS下KVM配置NAT网络(网络地址转换模式)

    KVM虚拟机Nat方式上网: # 查看当前活跃的网络 virsh net-list # 查看该网络的详细配置 virsh net-dumpxml default 客户机的XML配置文件中interfa ...

  7. docker配置桥接网络

    [root@localhost ~]# cd /etc/sysconfig/network-scripts/ [root@localhost network-scripts]# cp ifcfg-et ...

  8. Centos7配置桥接网络

  9. Centos7桥接网络、DNS、时间同步配置

    Centos配置桥接网络.DNS服务和时间同步 1.配置桥接网络 2.配置虚拟机网卡,采用的是静态ip方式 重启network服务 3.配置dns 4.关闭防火墙和selinux 5.ping外网域名 ...

随机推荐

  1. [板子]SPFA算法+链式前向星实现最短路及负权最短路

    参考:https://blog.csdn.net/xunalove/article/details/70045815 有关SPFA的介绍就掠过了吧,不是很赞同一些博主说是国内某人最先提出来,Bellm ...

  2. gulp插件使用

    //引入gulp组件 var gulp=require('gulp'); //创建任务 gulp.task('hello',function(){ console.log('hello'); }); ...

  3. mac系统上访问docker容器中的ip配置

    使用 mac系统,发现docker没有 docker0网桥,无法直接在宿主机上 访问 容器的ip, 在测试的时候有这种需求,而不是通过-p的方式,可以参考下面的连接,主要就是 修改 setting.j ...

  4. U8 EAI实现XML的生成

    /*************************************************************************************************** ...

  5. HDU1172猜数字 [模拟]

    1.题意 任务是猜一个四位数,每次尝试后会给出这次猜中了几个数字和猜中了几个位置,求能否根据尝试的记录给出答案 2.分析 数据给出查询次数和每次查询的数及其有几个数和几个位置符合,值得注意的是,猜对的 ...

  6. 第四阶段:2.从零打造一款工具APP产品

    1.APP:安卓跟IOS(根据目标用户选择 ,那个先做哪个后做,APP的通过需要审核,其中也有很多技巧). 同时注意设计模版的使用(提高效率).竞品分析也是少不了的.

  7. Jenkins配置QQ邮箱发送邮件

    1.登陆QQ邮箱 2. 在“帐户”里开启“POP3/SMTP”并获取授权码 3. 发送短信验证验证后得到下面验证码 aeoygabszxfecbdj #验证吗 点击确定之后,服务已经开启 4. Jen ...

  8. 20191031-6beta week 1/2 Scrum立会报告+燃尽图 04

    此作业要求参见https://edu.cnblogs.com/campus/nenu/2019fall/homework/9914 git地址:https://e.coding.net/Eustia/ ...

  9. 洛谷$P$3066 逃跑的$BarnRunning\ Away\ From…$ $[USACO12DEC]$ 主席树

    正解:主席树 解题报告: 传送门! 1551做$dp$实在是做不下去了,,,于是来水点儿别的题$QAQ$ 然后这题,挺纸老虎的我$jio$得,,,看起来很难的样子然后仔细想下之后发现依然是个板子呢,, ...

  10. React useEffect的源码解读

    前言 对源码的解读有利于搞清楚Hooks到底做了什么,如果您觉得useEffect很"魔法",这篇文章也许对您有些帮助. 本篇博客篇幅有限,只看useEffect,力求简单明了,带 ...