您尚未登录。

#1 2021-05-05 21:22:06

comix
会员
注册时间: 2020-08-15
帖子: 24

qemu的虚拟网络接口处的ip一直无法获取并且虚拟机无法联网。

最近在用qemu+kvm装freebsd13.0,但是装好后发现无法联网,虚拟机里表现为无法解析网址等路由问题。
virbr0已经开启了,但是虚拟机管理系统的NIC那里一直显示ip地址未知。

```
virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:13:a8:3c  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 1968 (1.9 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

bridge name     bridge id               STP enabled     interfaces
virbr0          8000.52540013a83c       yes

virbr0
bridge id              8000.52540013a83c
designated root        8000.52540013a83c
root port                 0                    path cost                  0
max age                  19.99                 bridge max age            19.99
hello time                1.99                 bridge hello time          1.99
forward delay             1.99                 bridge forward delay       1.99
ageing time             299.99
hello timer               1.30                 tcn timer                  0.00
topology change timer     0.00                 gc timer                 184.98
flags
```
这是uml:
```
<interface type="network">
  <mac address="52:54:00:89:28:2c"/>
  <source network="default"/>
  <model type="virtio"/>
  <link state="up"/>
  <address type="pci" domain="0x0000" bus="0x01" slot="0x00" function="0x0"/>
</interface>
```

离线

#2 2021-05-05 22:24:04

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,919
个人网站

Re: qemu的虚拟网络接口处的ip一直无法获取并且虚拟机无法联网。

你没开 DHCP 服务?

离线

#3 2021-05-06 08:53:02

布丁酱
Arch!Arch!Arch!
所在地: 成都
注册时间: 2020-07-27
帖子: 197
个人网站

Re: qemu的虚拟网络接口处的ip一直无法获取并且虚拟机无法联网。

试试macvtap,类似于桥接,不过可能只能从外部访问


布丁酱是菜鸡,没毛病,他是菜鸡:)

离线

#4 2021-05-06 20:20:47

comix
会员
注册时间: 2020-08-15
帖子: 24

Re: qemu的虚拟网络接口处的ip一直无法获取并且虚拟机无法联网。

依云 说:

你没开 DHCP 服务?

是这样吗?我用的是NetworkManager,dhcp是用的自带的,没有用dnsmasq和dhclient,systemctl NetworkManager也没有错误信息,不应该是这个吧?
而且我试了试vmware,同样的无法连接网络,vmware我选的是自动桥接。

最近编辑记录 comix (2021-05-06 20:27:45)

离线

#5 2021-05-06 22:05:35

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,919
个人网站

Re: qemu的虚拟网络接口处的ip一直无法获取并且虚拟机无法联网。

NetworkManager、dhclient 都是 DHCP 客户端。我觉得你没有 DHCP 服务端来给你的虚拟机分配 IP。
简单的场景,建议直接手动分配静态 IP。

离线

#6 2021-05-06 22:06:37

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,919
个人网站

Re: qemu的虚拟网络接口处的ip一直无法获取并且虚拟机无法联网。

哦,你是管理界面显示 IP 未知,所以还有种可能是 agent 没跑。你在虚拟机里 ip a 看看有没有拿到 IP。

离线

#7 2021-05-07 17:57:01

comix
会员
注册时间: 2020-08-15
帖子: 24

Re: qemu的虚拟网络接口处的ip一直无法获取并且虚拟机无法联网。

对了,我的虚拟机是freebsd,里面没有ip命令,所以我用了ifconfig,看样子是没拿到,我主机的效果是

3: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 52:54:00:13:a8:3c brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
6: vnet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master virbr0 state UNKNOWN group default qlen 1000
    link/ether fe:54:00:89:28:2c brd ff:ff:ff:ff:ff:ff
    inet6 fe80::fc54:ff:fe89:282c/64 scope link 
       valid_lft forever preferred_lft forever

虚拟机里除了lo0就只有vnet0了,vnet0显示的是
inet 0.0.0.0 netmask 0xff000000 broadcast 255.255.255.255
而且从启动信息来看是虚拟机的dhclient启动步骤出问题了。
感觉原因就是ip没拿到,就是不知道为什么。

离线

#8 2021-05-07 18:59:10

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,919
个人网站

Re: qemu的虚拟网络接口处的ip一直无法获取并且虚拟机无法联网。

那就是没 DHCP 服务了。自己配个 IP 上去吧。

离线

#9 2021-05-07 20:27:45

comix
会员
注册时间: 2020-08-15
帖子: 24

Re: qemu的虚拟网络接口处的ip一直无法获取并且虚拟机无法联网。

也就是说这是qemu的问题而不是我本机的吗?之前我在qemu里试了一下arch,也是无法联网。

离线

#10 2021-05-07 20:39:44

comix
会员
注册时间: 2020-08-15
帖子: 24

Re: qemu的虚拟网络接口处的ip一直无法获取并且虚拟机无法联网。

对了,我忽然想起来前一阵日子更新系统的时候因为依赖把iptables换成了iptables-nft和nftables,请问和这个有关系吗?

离线

#11 2021-05-07 20:44:15

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,919
个人网站

Re: qemu的虚拟网络接口处的ip一直无法获取并且虚拟机无法联网。

嗯,问题在宿主机这边。
我也用 qemu,我主要用静态 IP。也有用 dnsmasq 部署 DHCP 服务。

离线

#12 2021-05-07 20:57:00

comix
会员
注册时间: 2020-08-15
帖子: 24

Re: qemu的虚拟网络接口处的ip一直无法获取并且虚拟机无法联网。

那我去试试把networkmanager的dhcp换成dhcpcd

最近编辑记录 comix (2021-05-07 21:04:08)

离线

#13 2021-05-07 21:26:08

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,919
个人网站

Re: qemu的虚拟网络接口处的ip一直无法获取并且虚拟机无法联网。

comix 说:

那我去试试把networkmanager的dhcp换成dhcpcd

不,dhcpcd 是客户端(第二个 c),不是服务端。
你可以用 dnsmasq 或者 dhcpd。

离线

#14 2021-05-07 23:33:39

comix
会员
注册时间: 2020-08-15
帖子: 24

Re: qemu的虚拟网络接口处的ip一直无法获取并且虚拟机无法联网。

请问怎样把dnsmasq设置成networkmanager的dhcp server呢?在wiki上只看到了dhcp client的设置。

离线

#15 2021-05-07 23:49:43

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,919
个人网站

Re: qemu的虚拟网络接口处的ip一直无法获取并且虚拟机无法联网。

comix 说:

请问怎样把dnsmasq设置成networkmanager的dhcp server呢?在wiki上只看到了dhcp client的设置。

呃,这个和 networkmanager 有什么关系?不是把 dnsmasq 配好跑起来就好了吗?

离线

页脚