歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Fedora 14 中的虛擬化網絡

Fedora 14 中的虛擬化網絡

日期:2017/2/28 16:21:46   编辑:Linux教程

Fedoara 14和RHEL 6[kvm]中為虛擬化提供了3種配置支持,
1. Network Address Translation [NAT]
2. 直接分配物理設備 [PCI passthrough or SR-IOV]
3. 共享物理設備[Bridge]

其中NAT是默認開啟的,如果要想外網能訪問虛擬機多使用直接分配物理設備或者橋接網絡。

NAT:
幾乎所有標准的libvirt都支持NAT作為虛擬網絡[default virtual network],virsh net-list --all 可以查看

# virsh net-list --all
Name State Autostart
-----------------------------------------
default active yes

如果相應的xml配置文件丟失,可以從模板中提取:

# virsh net-define /usr/share/libvirt/networks/default.xml

然後將虛擬網絡標識為自動啟動:

# virsh net-autostart default
# virsh net-start default

查看橋接情況,virbr0 通過NAT和IP轉發與實體網絡連通,不添加其它接口。

# brctl show
bridge name bridge id STP enabled interfaces
virbr0 8000.000000000000 yes

一般情況下libvirt會自動添加一些規則到iptables,並嘗試打開ip_forward功能,但其它應用程序可能會禁止ip_forward,所以最好在/etc/sysctl.conf中添加一項:

net.ipv4.ip_forward = 1

Briged:
一般用於多網卡機器上,NetworkManager不支持橋接,所以需要關閉NetworkManager服務,或者在網絡設備的配置文件中添加一選項'NM_CONTROLLED=no'參數

# vim /etc/sysconfig/network-scripts/ifcft-eth0

DEVICE=eth0
HWADDR=00:16:76:D6:C9:45
ONBOOT=yes
BRIDGE=br0

添加br0配置

DEVICE=br0
ONBOOT=yes
TYPE=Bridge
BOOTPROTO=dhcp
DELAY=0

重啟網絡服務

service network restart

brctl查看

# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.f0def1341ae6 no eth0
virbr0 8000.000000000000 yes

配置iptables,允許橋接網絡的流量轉發[用到physdev模塊]

# iptables -I FORWARD -m physdev --physdev-is-bridged -j ACCEPT

配置以下內核參數也可以實現:

net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0

Copyright © Linux教程網 All Rights Reserved