在 openstack 上启动的实例无法连接到局域网上的任何东西,但它们可以顺利地访问互联网(谷歌、雅虎等)
Openstack设置:
- Ubuntu 12.04 运行 Openstack Essex
- 多节点
- 1 个控制器
- 1 运行 nova-network 的计算
服务器上有双以太网卡。eth0 在办公室局域网上,eth1 在私有局域网上。
- 内部办公室局域网:10.0.0.0/16(10.0.0.1 - 10.0.255.255)
- Openstack私有局域网:10.2.0.0/16
实例在以下范围内获取浮动 IP:10.0.253.0/24
可以从办公室局域网访问具有浮动 IP 的实例。实例无法直接访问办公室局域网(ping 10.0.0.2 失败)
我认为这是计算主机上缺少转发规则。
计算路由表:
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
default firewall001.hq. 0.0.0.0 UG 0 0 0 eth0
10.0.0.0 * 255.255.0.0 U 0 0 0 eth0
10.2.0.0 * 255.255.255.224 U 0 0 0 br100
192.168.122.0 * 255.255.255.0 U 0 0 0 virbr0
实例路由表:
Routing tables
Internet:
Destination Gateway Flags Refs Use Netif Expire
default 10.2.0.4 UGS 2 184 vtnet0
10.2.0.0/27 link#1 U 3 162 vtnet0
plum.novalocal link#1 UHS 0 0 lo0
localhost link#2 UH 0 0 lo0
答案1
结果是路由问题。
实际修复方法尚不清楚,但将所有虚拟机移动到 192.168.0.0/16 让我得以继续。