qemu虚拟机配置网络

这篇具有很好参考价值的文章主要介绍了qemu虚拟机配置网络。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、实现qemu虚机&宿主机网络互通

qemu虚机的网络介绍及原理可参考前人文章:Linux 内核调试 七:qemu网络配置_lqonlylove的博客-CSDN博客

这里只简单梳理下操作流程,以便快速实现网络互通。

1.宿主机创建 tap0

[root@localhost ~]# ifconfig
[root@localhost ~]# ip tuntap add dev tap0 mode tap
[root@localhost ~]# ip link set dev tap0 up
[root@localhost ~]# ip address add dev tap0 192.168.2.128/24
[root@localhost ~]# ifconfig

两次ifconfig区别可看出宿主机上新添加的tap0设备,其中tap0的ip已被我们设置。

qemu 配置网络,linux,运维,服务器

2.在另一窗口启动qemu虚机,注意带上-net命令

qemu-system-ppc64 -m 8G -smp 4 -name pseries --enable-kvm -boot cd -hda linux.img -serial tcp::4444,server=on,wait=off\
-net nic -net tap,ifname=tap0,script=no,downscript=no

qemu 配置网络,linux,运维,服务器

 此次我们是手动在宿主机上创建了tap0设备并绑定固定ip,所以qemu启动时网卡的启动脚本和关闭脚本都不用了。

3.虚拟机中配置网络

 # ip addr
 # ip addr add 192.168.2.129/24 dev exxx
 # ip addr
 # ip link set env2 up
 # ping 192.168.2.128 -c 4

 qemu 配置网络,linux,运维,服务器

qemu 配置网络,linux,运维,服务器

 其中的dev设备要换成你自己虚机的设备,我这里是env2。此时可以看到,我们用env2的网卡ping宿主机的tap0,已经可以ping通。

如果此时ping报错Destination Host Unreachable,可以查看物理机是否加载了tap模块,在加载mod模块删除tap0设备并重新上述步骤后,发现可以ping通。

qemu 配置网络,linux,运维,服务器

 qemu 配置网络,linux,运维,服务器

4.将宿主机文件拷贝至qemu虚机

此时,可以 scp root@192.168.2.128:/……        按照个人需求进行文件拷贝了。

qemu 配置网络,linux,运维,服务器

 5.宿主机 ping 虚拟机

qemu 配置网络,linux,运维,服务器

上述方法实现qemu虚机&宿主机网络互通后,每次guest重启均会丢失相应的env2的配置信息,所以重启后必须重配,嫌麻烦的话可以直接写死到rc.local中,当然也可以通过net的启动脚本script来指定。

二、实现qemu虚拟机访问外网

接上上述步骤,要想让虚拟机继续访问外网则需进一步配置下route以及iptables。

此处参考了Qemu连接外网的配置方法_qemu 使用user联网_Mculover666的博客-CSDN博客

1.宿主机需要开启 IP 转发

echo 1 > /proc/sys/net/ipv4/ip_forward

这个选项一般都是默认开的。

2.宿主机添加静态路由

qemu 配置网络,linux,运维,服务器

这个路由一般都是有的,没有则需要手动添加:

route add -net 192.168.2.0 netmask 255.255.255.0 dev tap0

3. 宿主机设置 iptables 规则

打开 iptables 的 NAT 功能:

iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -o enP1p22s0 -j MASQUERADE

这条规则的意思是,来自 192.168.2.0/24,且从 enP1p22s0 出去的包,要进行 NAT,同时会对返回的包进行 NAT。如果只有一个子网, -s 192.168.2.0/24 可以省略。

qemu 配置网络,linux,运维,服务器

 4.qemu添加默认网关

虚机中添加default gw,即将虚机的网络数据包都交由物理机tap0处理。

route add default gw <宿主机tap0的ip地址> dev exxx

route add default gw 192.168.2.128 dev env2

qemu 配置网络,linux,运维,服务器

此刻,ping外网如centos已经成功!可以自由自在的yum install了。^_^

三、附录

1.我用的repo源,需先在/etc/hosts添加上域名解析

        18.225.36.18  mirrorlist.centos.org

        150.139.241.192 mirrors.aliyun.com

# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client.  You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the 
# remarked out baseurl= line instead.
#
#
 
[base]
name=CentOS-8.5.2111 - Base - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos-vault/8.5.2111/BaseOS/$basearch/os/
        http://mirrors.aliyuncs.com/centos-vault/8.5.2111/BaseOS/$basearch/os/
        http://mirrors.cloud.aliyuncs.com/centos-vault/8.5.2111/BaseOS/$basearch/os/
gpgcheck=0
enabled=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-Official
 
#additional packages that may be useful
[extras]
name=CentOS-8.5.2111 - Extras - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos-vault/8.5.2111/extras/$basearch/os/
        http://mirrors.aliyuncs.com/centos-vault/8.5.2111/extras/$basearch/os/
        http://mirrors.cloud.aliyuncs.com/centos-vault/8.5.2111/extras/$basearch/os/
gpgcheck=0
enabled=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-Official
 
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-8.5.2111 - Plus - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos-vault/8.5.2111/centosplus/$basearch/os/
        http://mirrors.aliyuncs.com/centos-vault/8.5.2111/centosplus/$basearch/os/
        http://mirrors.cloud.aliyuncs.com/centos-vault/8.5.2111/centosplus/$basearch/os/
gpgcheck=0
enabled=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-Official
 
[PowerTools]
name=CentOS-8.5.2111 - PowerTools - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos-vault/8.5.2111/PowerTools/$basearch/os/
        http://mirrors.aliyuncs.com/centos-vault/8.5.2111/PowerTools/$basearch/os/
        http://mirrors.cloud.aliyuncs.com/centos-vault/8.5.2111/PowerTools/$basearch/os/
gpgcheck=0
enabled=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-Official


[AppStream]
name=CentOS-8.5.2111 - AppStream - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos-vault/8.5.2111/AppStream/$basearch/os/
        http://mirrors.aliyuncs.com/centos-vault/8.5.2111/AppStream/$basearch/os/
        http://mirrors.cloud.aliyuncs.com/centos-vault/8.5.2111/AppStream/$basearch/os/
gpgcheck=0
enabled=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-Official

qemu 配置网络,linux,运维,服务器

2.虚拟机开机自动设置

将上述配置写入到/etc/sysconfig/network-scripts/ifcfg-xxx,配置好其中的IPADDR,GATEWAY,ONBOOT=yes,下次开机就可以自动联网了。

抑或在/etc/rc.d/rc.local中添加如下命令,并对该文件chmod +x

ip addr add 192.168.2.129/24 dev env2
ip link set env2 up
route add default gw 192.168.2.128 dev env2

另外额外提一句,若是要修改系统内核参数,可以将/proc/sys/下的内核参数配置添加到 /etc/sysctl.conf中,然后执行 #sysctl -p 让该配置立即生效。

3.qemu支持的网卡类型可以用qemu_system_xxx -net nic,model=help查询,其中-net nic默认以vlan的方式创建,如果不想用默认的网卡创建,比如要创建一张virtio-net-pci类型的网卡,则可以把qemu命令行中的网卡部分换成

-net nic,model=virtio -net  tap,ifname=tap0,script=no,downscript=no

其余步骤完全一样,这样就可以用info qtree查看到虚拟有一套virtio的网卡架构了。 

如果不想用-net nic这一套hub方式的创建类型,那也可以用传统的 device/xxxdev的方式创建,则可以把qemu命令行中的网卡部分换成

-device e1000,netdev=foo     -netdev tap,ifname=tap0,script=no,downscript=no,id=foo文章来源地址https://www.toymoban.com/news/detail-621354.html

到了这里,关于qemu虚拟机配置网络的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux服务器配置指南:网络、用户管理、共享服务及DNS配置详解

    💂 个人网站:【 海拥】【神级代码资源网站】【办公神器】 🤟 基于Web端打造的:👉轻量化工具创作平台 💅 想寻找共同学习交流的小伙伴,请点击【全栈技术交流群】 设置虚拟机的网卡为仅主机模式,并要求服务器采用双网卡, ens33 IP地址设置为192.168. 5.x/24(其中x学号),

    2024年02月05日
    浏览(58)
  • Linux中搭建FTP服务器,匿名用户访问、本地用户访问、虚拟用户访问(详细解答安装配置步骤)

    对于Linux搭建服务器步骤详解:可以基于匿名访问、本地用户访问、虚拟用户访问 FTP服务访问可分为三种 匿名用户:用户名为ftp或者anonymous,提供任意密码或无密码访问即可. 本地用户:要求有用户名和相对应密码,适用于使用者都是使用此服务器的人。 虚拟用户(出于安全

    2024年02月10日
    浏览(66)
  • 运维 | 查看 Linux 服务器 IP 地址

    大多数在操作 Linux 系统时,我们经常需要知道服务器的 IP 比便于后续的一系列操作,这时候有快速查看主机 IP 的命令行操作,能够有效的帮助我们 本章节主要记录一些常用查看服务器 IP 的命令,希望对大家有所帮助。 查看 Linux 服务器的 IP 地址的命令大体上有以下几种。

    2024年04月27日
    浏览(81)
  • 【运维】Linux 跨服务器复制文件文件夹

    如果是云服务 建议用内网ip scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。可能会稍微影响一下速度。当你服务器硬盘变为只读 read only system时,用scp可以帮你把文件移出来

    2024年02月08日
    浏览(74)
  • 【Linux 服务器运维】定时任务 crontab 详解 | 文末送书

    本文思维导图概述的主要内容: 1.1 什么是 crontab Crontab 是一个在 Unix 和 Linux 操作系统上 用于定时执行任务 的工具。它允许用户创建和管理计划任务,以便在特定的时间间隔或时间点自动运行命令或脚本。Crontab 是 cron table 的缩写, cron 指的是 Unix 系统中的一个后台进程,它

    2024年02月08日
    浏览(92)
  • qemu虚拟机配置网络

    qemu虚机的网络介绍及原理可参考前人文章:Linux 内核调试 七:qemu网络配置_lqonlylove的博客-CSDN博客 这里只简单梳理下操作流程,以便快速实现网络互通。 1.宿主机创建 tap0 [root@localhost ~]# ifconfig [root@localhost ~]# ip tuntap add dev tap0 mode tap [root@localhost ~]# ip link set dev tap0 up [root@lo

    2024年02月14日
    浏览(44)
  • 【Linux运维】shell脚本检查服务器内存和CPU利用率

    在管理服务器时候写了一个 shell脚本,在服务上实现每天凌晨3点查系统的指定文件夹下的容量大小,如果超过10G就要删除3天前的内容,还要时刻查询内存和cpu利用率,如果超过80%就要提示用户出现过载 将以上代码保存为一个.sh文件,然后通过crontab在每天凌晨3点运行即可:

    2024年02月09日
    浏览(67)
  • 如何在虚拟专用服务器上配置 Nginx Web 服务器

    本文档涵盖的是不再受支持的 Ubuntu 版本。如果您目前正在运行 Ubuntu 12.04 服务器,我们强烈建议升级或迁移到受支持的 Ubuntu 版本: 升级到 Ubuntu 14.04 从 Ubuntu 14.04 升级到 Ubuntu 16.04 将服务器数据迁移到受支持的版本 原因: Ubuntu 12.04 已于 2017 年 4 月 28 日到达生命周期终点(

    2024年04月27日
    浏览(41)
  • Linux服务器常见运维性能测试(1)综合跑分unixbench、superbench

    最近需要测试一批服务器的相关硬件性能,以及在常规环境下的硬件运行稳定情况,需要持续拷机测试稳定性。所以找了一些测试用例。本次测试包括在服务器的高低温下性能记录及压力测试,高低电压下性能记录及压力测试,常规环境下CPU满载稳定运行的功率记录。 这个系

    2024年02月04日
    浏览(82)
  • Linux本地部署1Panel服务器运维管理面板并实现公网访问

    1Panel 是一个现代化、开源的 Linux 服务器运维管理面板。高效管理,通过 Web 端轻松管理 Linux 服务器,包括主机监控、文件管理、数据库管理、容器管理等 下面我们介绍在Linux 本地安装1Panel 并结合cpolar 内网穿透工具实现远程访问1Panel 管理界面 执行如下命令一键安装 1Panel: 安

    2024年02月04日
    浏览(98)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包