Wifi 和網橋。沒有網際網路。不支持
如果配置
eth0 Link encap:Ethernet HWaddr 54:04:a6:3d:36:ff UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:3300 errors:0 dropped:0 overruns:0 frame:0 TX packets:3300 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1 RX bytes:950771 (950.7 KB) TX bytes:950771 (950.7 KB) wlan0 Link encap:Ethernet HWaddr 30:5a:3a:60:5d:c0 inet addr:192.168.0.105 Bcast:192.168.0.255 Mask:255.255.255.0 inet6 addr: fe80::7cf4:8ce5:ba7c:8fd3/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1553 errors:0 dropped:0 overruns:0 frame:0 TX packets:1223 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1007907 (1.0 MB) TX bytes:524507 (524.5 KB)
問題
我已經為我的 QEMU Windows 客戶機設置了網路介面
bridge0
,並使用命令行啟用了它brctl addbr bridge0 qemu .. -netdev bridge,br=bridge0,id=net0 -device virtio-net-pci,netdev=net0
(並允許 bridge0 進入
/etc/qemu/bridge.conf
)。使用此設置,QEMU 來賓無法訪問 Internet。例如,在主機上,通過該網橋 ping 不起作用:
ping -I bridge0 8.8.8.8
如果我嘗試將我的 wifi 卡(有工作連接)添加到網橋:
brctl addif bridge0 wlan0
我得到了
Operation not supported
錯誤。我在網上看到很多消息這是不可能的。但是我該如何解決這個問題?我需要使用網橋將自定義
iptables
規則應用於我的訪客網路連接。我應該怎麼做才能讓我的網橋使用 WiFi 網際網路連接?
我如何參與
iptables
解決我的問題?如何為我的網橋創建子 NAT 來控制訪客?
讓 libvirt 處理這個問題。Libvirt 有一個預設的 NAT 網路,它將為您處理所有的轉發、偽裝和定址。這個 NAT 網路在 libvirt 部署中預先配置,字面意思是“預設”。NAT 是通過 WiFi 連接訪問虛擬機的最合理的方法。
此外,您幾乎永遠不能將 WiFi 用作橋樑。首先,因為主機介面通常不支持它。其次,因為幾乎所有無線接入點都會看到第二個 MAC 地址(來自您的 VM)作為欺騙嘗試進入您的 WiFi 連接,並取消您的身份驗證。
您可以通過命令行使用
virsh
和管理 libvirt。virt-install
您還可以virt-manager
通過類似於 vSphere 客戶端為 ESXi 工作的方式來管理 libvirt。這兩個管理前端都可以連接到遠端主機。還有比這更多的管理工具,幾乎任何一個都適合你。virt-manager
可能是最容易使用的。有關 libvirt 網路的更多資訊:http ://wiki.libvirt.org/page/Networking
一些 libvirt 管理工具(包括那些已經提到的):http ://www.linux-kvm.org/page/Management_Tools