我使用OpenStack,但我认为这是一个更普遍的问题。 其实我有一个专门的1 ip地址,我买了另一个,并添加使用openstack的新星pipe理cli。
所以现在这就是我得到的
$ ip addr 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:30:48:fc:4c:92 brd ff:ff:ff:ff:ff:ff inet 188.165.xx/24 brd 188.165.225.255 scope global eth0 inet 94.23.xx/32 scope global eth0 inet6 fe80::230:48ff:fefc:4c92/64 scope link valid_lft forever preferred_lft forever
所以看来,这两个IP绑定到eth0,问题是,我没有收到数据包目的地设置为94.23.xx,当我运行tcpdump -i eth0我看到数据包到两个ip,当我运行tcpdump -p – 我eth0,所以不在promiscous模式,我看到数据包只有第一个ip,所以dnat和我所需要的不会工作。
如果我尝试在主机上ping 94.23.xx工作正常,从外面给出超时。
任何想法?
最好的祝福
编辑:
$ ip route default via 188.165.x.254 dev eth0 metric 100 188.165.x.0/24 dev eth0 proto kernel scope link src 188.165.xx 192.168.3.0/24 dev br100 proto kernel scope link src 192.168.3.1 192.168.4.32/27 dev br100 proto kernel scope link src 192.168.4.33 192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1
你可以检查,在tcpdump在混杂模式下收到的数据包的目标MAC地址是什么?
如果目的地MAC地址不正确:00:30:48:fc:4c:92 – 您遇到IP冲突,应与您的提供商联系。
如果这是正确的 – 你有问题,例如错误的NIC,IP,内核设置,可能是不正确的networking掩码或路由问题。
你有你的第二个IP设置一个/ 32networking掩码。 这几乎可以防止它做任何事情,除非你试图把它作为一个环回(..和你的上游路由它给你)。
你的提供商应该给你一个你购买的第二个地址的子网掩码。 当你得到它的设置,那么你的系统应该能够ping该94.23.xx子网中的其他主机。