怎么理解并使用virbr0
怎么理解并使用virbr0,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
virbr0 是 KVM 默認創(chuàng)建的一個 Bridge,其作用是為連接其上的虛機網(wǎng)卡提供 NAT 訪問外網(wǎng)的功能。
virbr0 默認分配了一個IP 192.168.122.1,并為連接其上的其他虛擬網(wǎng)卡提供 DHCP 服務。
下面我們演示如何使用 virbr0。
在 virt-manager 打開 VM1 的配置界面,網(wǎng)卡 Source device 選擇 “default”,將 VM1 的網(wǎng)卡掛在 virbr0 上。
啟動 VM1,brctl show 可以查看到 vnet0 已經掛在了 virbr0 上。
# brctl show bridge name bridge id STP enabled interfaces br0 8000.000c298decbe no eth0 virbr0 8000.fe540075dd1a yes vnet0
用 virsh 命令確認 vnet 就是 VM1 的虛擬網(wǎng)卡。
# virsh domiflist VM1 Interface Type Source Model MAC ------------------------------------------------------- vnet0 network default rtl8139 52:54:00:75:dd:1a
virbr0 使用 dnsmasq 提供 DHCP 服務,可以在宿主機中查看該進程信息
# ps -elf|grep dnsmasq
5 S libvirt+ 2422 1 0 80 0 - 7054 poll_s 11:26 ? 00:00:00 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf
在 /var/lib/libvirt/dnsmasq/ 目錄下有一個 default.leases 文件,當 VM1 成功獲得 DHCP 的 IP 后,可以在該文件中查看到相應的信息
# cat /var/lib/libvirt/dnsmasq/default.leases 1441525677 52:54:00:75:dd:1a 192.168.122.6 ubuntu *
上面顯示 192.168.122.6 已經分配給 MAC 地址為 52:54:00:75:dd:1a 的網(wǎng)卡,這正是 vnet0 的 MAC。之后就可以使用該 IP 訪問 VM1 了。
# ssh 192.168.122.6 root@192.168.122.6's password: Welcome to Ubuntu 14.04.2 LTS (GNU/Linux 3.16.0-30-generic x86_64) Last login: Sun Sep 6 01:30:23 2015 root@VM1:~# ifconfig eth0 Link encap:Ethernet HWaddr 52:54:00:75:dd:1a inet addr:192.168.122.6 Bcast:192.168.122.255 Mask:255.255.255.0 inet6 addr: fe80::5054:ff:fe75:dd1a/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:61 errors:0 dropped:0 overruns:0 frame:0 TX packets:66 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:7453 (7.4 KB) TX bytes:8649 (8.6 KB)
Ping一下外網(wǎng)。
root@VM1:~# ping www.baidu.com PING www.a.shifen.com (180.97.33.107) 56(84) bytes of data. 64 bytes from 180.97.33.107: icmp_seq=1 ttl=52 time=36.9 ms 64 bytes from 180.97.33.107: icmp_seq=2 ttl=52 time=119 ms 64 bytes from 180.97.33.107: icmp_seq=3 ttl=52 time=88.5 ms 64 bytes from 180.97.33.107: icmp_seq=4 ttl=52 time=38.0 ms 64 bytes from 180.97.33.107: icmp_seq=5 ttl=52 time=122 ms
沒有問題,可以訪問外網(wǎng),說明 NAT 起作用了。
需要說明的是,使用 NAT 的虛機 VM1 可以訪問外網(wǎng),但外網(wǎng)無法直接訪問 VM1。 因為 VM1 發(fā)出的網(wǎng)絡包源地址并不是 192.168.122.6,而是被 NAT 替換為宿主機的 IP 地址了。
這個與使用 br0 不一樣,在 br0 的情況下,VM1 通過自己的 IP 直接與外網(wǎng)通信,不會經過 NAT 地址轉換。
總結
以上是生活随笔為你收集整理的怎么理解并使用virbr0的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: cad刷新命令的用法
- 下一篇: win10显卡驱动如何安装