确定没有跟踪路由的TCP / IP连接问题的原因

我试图从公司networking连接到主机(通过HTTPS),但我的尝试失败,超时。 我可以解决主机。 我知道主机已经启动了 我知道有一个防火墙过滤input的IP号码保护远程主机。 我的公司networking中的某些路由器上的Traceroute被禁用,所以我看不到我的数据包在哪里。 我知道我的数据包卡在沿途的某处。 这可能是(我认为)在我们公司networking中的一条糟糕的路线; 或configuration错误的防火墙阻止我在远程主机上(虽然它应该授予我访问权限)。 (原来是后者)

没有traceroute,有没有什么技术方法可以确定防止连接的错误configuration是在我们公司networking还是在远程主机上? (假设中间的互联网是可靠的。)

SuperUser.com上的全文和原文 ,可能不是最适合这个问题的地方。

如果你的networkingpipe理员阻止了ICMP(这是因为错误的原因而完成的),那么你几乎什么都不能做。 无论您使用什么样的协议来探测数据包(Windows tracert.exe使用ICMP,Windows,Linux traceroute默认使用UDP,如果您要求则使用TCP),如果ICMP作为协议通常被过滤(特别是如果ICMP响应由外部主机生成的filter也会被过滤掉),你不可能得到有意义的结果回到你的机器进行诊断,因为它们总是会以ICMP数据包的forms返回。

你说traceroute在路由器上是禁用的。 我只能过滤ICMP数据包,所以你可以使用TCP跟踪路由。

 sudo traceroute -T <host> 

你说你知道主机已经启动 – 你是如何validation的? 如果您可以访问任何其他端口上的主机,则路由设置正确。 如果您的公司在内部阻止icmp,以至于您甚至无法确认stream量正在走出互联网,请networking人员为您进行validation,并询问他们为什么阻止请求和回复(他们应该只在偏执时阻止特定types)在内部路由器上。 除此之外,您将不得不要求远程方查看他们的日志中是否可以看到您的源IP。 这也意味着问题就在他们的尽头。 但是,这些都不是你自己可以完全做的事情。

使用可以执行TCP traceroute的hping2工具

 hping2 www.somehost.com -p 443 --traceroute