在 CentOS6上为Xen设置桥接网络

Xen安装成功以后,需要对网络进行配置,这里介绍的是CentOS官网推荐的使用桥接方式进行网络配置。

Bridge(桥)是 Linux 上用来做 TCP/IP 二层协议交换的设备,与现实世界中的交换机功能相似。Bridge 设备实例可以和 Linux 上其他网络设备实例连接,既 attach 一个从设备,类似于在现实世界中的交换机和一个用户终端之间连接一根网线。当有数据到达时,Bridge 会根据报文中的 MAC 信息进行广播、转发、丢弃处理。

首先,需要关闭NetworkManager服务。在CentOS或者RHEL上,都默认会启用NerworkManager这个服务来对网卡进行管理,NetworkManager服务其实就是我们操作系统右上方那两个小电脑图标,我们在图形化界面可以点击那个来指定使用哪块网卡,但是我们如果需要使用网桥对网络进行配置,就必须要禁用掉这个服务(是不是必须禁止不太清楚,反正我没有禁止之前就一直不成功)。

[root@centos ~]# service NetworkManager stop
Stopping NetworkManager daemon:              [  OK  ]  // 停掉我们的NetworkManager服务,此时我们可以发现右上角那个图标就不见了

[root@centos~]# chkconfig NetworkManager off  //  NetworkManager这个服务默认会开机启动,所以我们将其设置成开机不启动

[root@centos~]# chkconfig --list | grep NetworkManager
NetworkManager     0:off    1:off    2:off    3:off    4:off    5:off    6:off

在网桥中一般会有下面的参数,即要求iptables不对bridge的数据进行处理,编辑/etc/sysctl.conf 加入下面几行:

net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0
然后用root权限运行:
# sysctl -p /etc/sysctl.conf

寻找主网络设备:

ip route show | grep 'default' | awk '{print $5}'
一般来说这是 eth0。接下来创建一个名叫 xenbr0 的网桥,并将 xenbr0 设成eth0的从属设备。

进入到 /etc/sysconfig/network-scripts 目录,然后参考 ifcfg-eth0 创建一个名叫 ifcfg-xenbr0 的文件:

[root@centos ~]# brctl addbr xenbr0  
[root@centos ~]# brctl show  
bridge name     bridge id               STP enabled     interfaces  
xenbr0          8000.000000000000       no  
[root@centos ~]# cd /etc/sysconfig/network-scripts  
[root@centos network-scripts]# cp ifcfg-eth0 ifcfg-xenbr0  
[root@centos network-scripts]# vi ifcfg-xenbr0   
TYPE=Bridge
DEVICE=xenbr0
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME=xenbr0
DELAY=0

[root@centos network-scripts]# vi ifcfg-eth0 
DEVICE=eth0
TYPE=Ethernet
UUID=f0d962e6-bc93-4b98-a68c-95be4788b3cc
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=dhcp
HWADDR=50:65:F3:26:33:45
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME="System eth0"
BRIDGE=xenbr0

 
[root@centos network-scripts]# service network restart 

注意:这里配置ifcfg-eth0和ifcfg-xenbr0的时候要根据不同的实际情况进行配置,比如说我们实验室是使用DHCP的自动分配方式来分配IP地址,我之前手动配置固定IP地址和动态获取IP地址都一直不成功,所以这里我的BOOTPROTO是使用dhcp方式,还有NM_CONTROLLED是关闭的(即不使用NetworkManager服务),至于其他条目的含义可以到网上去查。


查看实际生效的配置:
[ye@localhost network-scripts]$ brctl show
bridge name	bridge id		STP enabled	interfaces
xenbr0		8000.5065f3263345	no		eth0
[ye@localhost network-scripts]$ ifconfig
eth0      Link encap:Ethernet  HWaddr 50:65:F3:26:33:45  
          inet6 addr: fe80::5265:f3ff:fe26:3345/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:200981 errors:0 dropped:265 overruns:0 frame:0
          TX packets:40238 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:100789203 (96.1 MiB)  TX bytes:4686965 (4.4 MiB)
          Interrupt:20 Memory:f7d00000-f7d20000 

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:1034 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1034 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:100664 (98.3 KiB)  TX bytes:100664 (98.3 KiB)

xenbr0    Link encap:Ethernet  HWaddr 50:65:F3:26:33:45  
          inet addr:172.20.110.28  Bcast:172.20.110.255  Mask:255.255.255.0
          inet6 addr: 2001:250:3c02:74a:5265:f3ff:fe26:3345/64 Scope:Global
          inet6 addr: fe80::5265:f3ff:fe26:3345/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:169867 errors:0 dropped:19 overruns:0 frame:0
          TX packets:40095 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:94878168 (90.4 MiB)  TX bytes:4470263 (4.2 MiB)


安装dom U后,输入brctl show可以看到dom U的虚拟机网卡(vif1.0)已经挂到xenbr0下面:

[root@bogon Raccoon]# brctl show
bridge name	bridge id		STP enabled	interfaces
xenbr0		8000.f80f41bdedc2	no		eth0
							vif1.0
在启动的domU系统里自行更改eth0的配置,配置文件/etc/sysconfig/network-scripts/ifcfg-eth0,因为我们实验室是使用DHCP的自动分配方式来分配IP地址,如下是我的配置:

[root@bogon network-scripts]# cat ifcfg-eth0 
DEVICE="eth0"
BOOTPROTO=dhcp
HWADDR="00:16:3E:32:D5:76"
#iBROADCAST=192.168.1.255
#IPADDR=192.168.1.110
#NETMASK=255.255.255.0
#GATEWAY=192.168.1.1  
#DNS=8.8.8.8
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="983f2f11-93e1-488c-ad6b-b35ec330290e"
实验结果可以与dom 0相互ping通而且可以访问外网:

[root@bogon network-scripts]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:16:3E:32:D5:76  
          inet addr:172.20.110.129  Bcast:172.20.110.255  Mask:255.255.255.0
          inet6 addr: 2001:250:3c02:74a:216:3eff:fe32:d576/64 Scope:Global
          inet6 addr: fe80::216:3eff:fe32:d576/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:205472 errors:0 dropped:0 overruns:0 frame:0
          TX packets:344 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:33705212 (32.1 MiB)  TX bytes:19014 (18.5 KiB)
          Interrupt:247 

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:197 errors:0 dropped:0 overruns:0 frame:0
          TX packets:197 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:21789 (21.2 KiB)  TX bytes:21789 (21.2 KiB)





参考文献:

[1]. http://blog.csdn.net/jinguangliu/article/details/19993411

[2]. https://wiki.centos.org/zh/HowTos/Xen/Xen4QuickStart/Xen4Networking6

[3]. https://www.iyunv.com/thread-13109-1-1.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值