无法连接到特定IP地址,但可以连接到同一子网中的其他IP

无法连接到特定IP地址,但可以连接到同一子网中的其他IP

我正在 DMZ 中运行 14.04.2 LTS ubuntu 盒子,IP 为 10.10.30.35,我有以下网络谜团。我正在尝试连接到 DMZ 之外但位于我们内部网络 10.2.0.200 的另一个 unix 盒子(通过 ssh 或 https),但失败并出现类似No route to hostping导致目标主机无法访问的错误。但是,我可以连接(ping、ssh 和 https)到位于 10.2.0.170 的类似 unix 盒子,该盒子也在 DMZ 之外但在我们的网络内部。我的 iptables 中没有任何内容:

> iptables --list
Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

网关看起来设置正确:

> route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.10.30.25     0.0.0.0         UG    0      0        0 eth0
10.10.30.0      0.0.0.0         255.255.255.0   U     0      0        0 eth0

当我从 DMZ 中的机器执行 tcpdump 并尝试 ping 10.2.0.200 框时,我所看到的只是:

 ARP, Request who-has 10.2.0.200 tell myserver.mydomain.com, length 28

但是,我从未看到任何对 10.2.0.200 的响应或任何其他流量。看来arp协议不起作用?检查 arp,我得到这个:

> arp -na
? (outsideipaddress) at <incomplete> on eth0
? (10.10.30.25) at 00:1a:8c:f0:50:82 [ether] on eth0 <-- gateway
? (10.10.30.80) at 00:50:56:a7:06:89 [ether] on eth0
? (outsideipaddress) at <incomplete> on eth0
? (10.2.0.200) at <incomplete> on eth0
? (outsideipaddress) at <incomplete> on eth0

所以,那个 10.2.0.200 条目很奇怪,我尝试清除它并得到这个:

> arp -d 10.2.0.200
SIOCDARP(dontpub): Network is unreachable

尝试使用ip -s -s neigh flush all也不会删除该条目。

所以,我在这里束手无策。是否是 arp 条目阻止我连接到 10.2.0.200?或者我完全缺少其他东西?我可以手动编辑 arp 表并添加 MAC 地址吗?

在此先感谢您的帮助。

答案1

我做了一个

ip route flush cache

我能够 ping 和 SSH。仍然不能https,但我相信那是网络防火墙。谢谢大家的帮助。

答案2

? (10.2.0.200) at <incomplete> on eth0条目是无法访问机器时的正常行为(机器是否已通电?)

如果目标计算机在 IPTables 中有某些内容,例如,它阻止了 ICMPv4 请求,您将在 arp 表中看到完整的条目,因为流量已被丢弃,但已到达主机。

所以,只是猜测。你有防火墙来做 DMZ 吗?只是为了确定...尝试跟踪路线。

相关内容