首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Xen domainU主机没有正确桥接(总是192.168.1.122)

Xen domainU主机没有正确桥接(总是192.168.1.122)
EN

Server Fault用户
提问于 2012-04-27 02:16:03
回答 1查看 1.4K关注 0票数 0

我试图在一个新的Xen服务器上设置一些domU主机,但是,我似乎无法让这些主机中的任何一个连接到本地网络(即办公室的192.168.0.*范围)。在这些主机上运行dhclient只分配192.168.122.* ip地址,我可以从dom0访问ip地址,但不能从任何外部主机(比如我的工作站)分配ip地址。以下是一些信息:

Dom0的ifconfig:

代码语言:javascript
复制
eth0      Link encap:Ethernet  HWaddr 54:04:a6:19:25:77  
          inet addr:192.168.0.107  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::5604:a6ff:fe19:2577/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:13383 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2193 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:1808204 (1.8 MB)  TX bytes:462896 (462.8 KB)
          Interrupt:18 Memory:fb500000-fb520000 

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:16436  Metric:1
          RX packets:72 errors:0 dropped:0 overruns:0 frame:0
          TX packets:72 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:9600 (9.6 KB)  TX bytes:9600 (9.6 KB)

vif7.0    Link encap:Ethernet  HWaddr fe:ff:ff:ff:ff:ff  
          inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:27 errors:0 dropped:0 overruns:0 frame:0
          TX packets:363 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:32 
          RX bytes:4372 (4.3 KB)  TX bytes:20444 (20.4 KB)

virbr0    Link encap:Ethernet  HWaddr fe:ff:ff:ff:ff:ff  
          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:130 errors:0 dropped:0 overruns:0 frame:0
          TX packets:136 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:21401 (21.4 KB)  TX bytes:19171 (19.1 KB)

以及domU的ifconfig:

代码语言:javascript
复制
eth0      Link encap:Ethernet  HWaddr 00:16:3e:5a:85:b0  
          inet addr:192.168.122.51  Bcast:192.168.122.255  Mask:255.255.255.0
          inet6 addr: fe80::216:3eff:fe5a:85b0/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:476 errors:0 dropped:0 overruns:0 frame:0
          TX packets:27 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:19650 (19.6 KB)  TX bytes:4750 (4.7 KB)
          Interrupt:10 

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:16436  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:0 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

在/etc/xen中VM的配置文件中,我们还可以看到:

代码语言:javascript
复制
#
#  Networking
#
dhcp        = 'dhcp'
vif         = [ 'mac=00:16:3E:5A:85:B0' ]

iptables在dom0上的规则:

代码语言:javascript
复制
iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     udp  --  anywhere             anywhere             udp dpt:domain
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:domain
ACCEPT     udp  --  anywhere             anywhere             udp dpt:bootps
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:bootps

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere             PHYSDEV match --physdev-out vif7.0 --physdev-is-bridged
ACCEPT     all  --  anywhere             anywhere             PHYSDEV match --physdev-in vif7.0 --physdev-is-bridged
ACCEPT     all  --  anywhere             192.168.122.0/24     state RELATED,ESTABLISHED
ACCEPT     all  --  192.168.122.0/24     anywhere            
ACCEPT     all  --  anywhere             anywhere            
REJECT     all  --  anywhere             anywhere             reject-with icmp-port-unreachable
REJECT     all  --  anywhere             anywhere             reject-with icmp-port-unreachable

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

最后,在/etc/xen/xend.conf中,我们看到启用了以下选项:

代码语言:javascript
复制
(network-script network-bridge)
(vif-script vif-bridge)

根据文档,这就是你所需要的。这些是Ubuntu盒子。

作为Xen的新手,我希望eth0 in domU会被分配一个192.168.0.*来自办公室dhcp服务器的地址--这就是我过去使用过的其他虚拟化产品的行为方式(即Virtualbox + VMWare)。

有人能帮我解释一下这件事吗?

干杯!

EN

回答 1

Server Fault用户

回答已采纳

发布于 2012-04-30 04:22:41

找到解决办法后,发现我们受到了Qemu的干扰。观察以下文件:

代码语言:javascript
复制
# cat /etc/libvirt/qemu/networks/autostart/default.xml 
<network>
  <name>default</name>
  <bridge name="virbr0" />
  <forward/>
  <ip address="192.168.122.1" netmask="255.255.255.0">
    <dhcp>
      <range start="192.168.122.2" end="192.168.122.254" />
    </dhcp>
  </ip>
</network>

这破坏了我们创建桥接网络的能力,反而迫使NAT。修复很简单-删除文件并重新启动!接下来,我们的接口如下所示:

代码语言:javascript
复制
eth0      Link encap:Ethernet  HWaddr 54:04:a6:19:25:77  
          inet addr:192.168.0.107  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::5604:a6ff:fe19:2577/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:11544 errors:0 dropped:0 overruns:0 frame:0
          TX packets:316 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:1693851 (1.6 MB)  TX bytes:37859 (37.8 KB)

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:16436  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:0 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

peth0     Link encap:Ethernet  HWaddr 54:04:a6:19:25:77  
          inet6 addr: fe80::5604:a6ff:fe19:2577/64 Scope:Link
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:16811 errors:0 dropped:0 overruns:0 frame:0
          TX packets:441 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:2309354 (2.3 MB)  TX bytes:52524 (52.5 KB)
          Interrupt:18 Memory:fb500000-fb520000 

vif2.0    Link encap:Ethernet  HWaddr fe:ff:ff:ff:ff:ff  
          inet6 addr: fe80::fcff:ffff:feff:ffff/64 Scope:Link
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:49 errors:0 dropped:0 overruns:0 frame:0
          TX packets:11937 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:32 
          RX bytes:5850 (5.8 KB)  TX bytes:1624520 (1.6 MB)

此外,我们的桥梁也自动设置如下:

代码语言:javascript
复制
# brctl show
bridge name bridge id       STP enabled interfaces
eth0        8000.5404a6192577   no      peth0
                                    vif2.0

因此,现在所有的DomainU主机都按照预期工作。我希望这能帮到别人:)

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/383626

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档