诊断沿路由的TCP通信

时间:2013-05-22 11:21:12

标签: apache networking tcp firewall

从我的家庭DSL网络,我无法再访问特定网站(例如www.example.com)。 使用wireshark和其他工具,我观察到以下属性:

  1. 当请求发送到站点的端口80时,原始TCP SYN没有获得SYN / ACK应答
  2. 这适用于所有平台(Windows,iOS)
  3. 当请求来自另一个IP时,Web服务器(www.example.com)会响应(例如,从我的工作场所,网站工作正常)
  4. 家庭网络可以访问网络上的所有其他网站(因此除了该网站外,家庭网络工作正常)
  5. 在同一IP上托管的其他网站也不回答
  6. 在其他端口(例如FTP,端口21)上与服务器的IP工作通信
  7. Ping和tracert是成功的
  8. 高级别服务器日志中未记录任何请求
  9. 分析:上面让我相信,必须有一个防火墙过滤掉路由上的请求,但仅限于端口80上的请求。我看到可以找到这个防火墙的几个选项

    1. 在家中的调制解调器
    2. 由我的ISP在他们的路线上实施(他们是否出于某种原因阻止了该网站)?
    3. 在服务器上(由于某种原因,它不提供我的公共IP)
    4. 正如您所期望的那样,ISP和服务器托管公司都将错误放在另一方上。我想调查问题所在。

      问题:如何诊断原始SYN消息的去向?

      • 是否在调制解调器处被阻止?
      • 是否到达服务器?
      • 服务器是否应答(SYN / ACK),答案被阻止/转储?

1 个答案:

答案 0 :(得分:0)

首先回答你的问题:

1) MODEM 不会阻止,过滤等路由器。如果您有路由器,并且可以访问该界面,您将确定您的设备是否正在过滤。

2)只有服务器的管理员才能告诉您这些信息。

3)见上文。

现在......作为维护谁知道有多少台服务器的人,我不时会阻止来自特定目的地的特定端口。例如,如果我看到“已知网站垃圾邮件发送者”(通过Spamhaus,Shadowserver等),我就有了重新编写防火墙规则的应用程序。例如,如果$ BAD_USER尝试访问PORT80然后ipfw(从该端口防火墙)。因此,您的IP或整个IP空间(CIDR)可能会从服务器列入黑名单。

如果您使用的是Linux或BSD,可以尝试使用tcptraceroute:

tcptraceroute www.this-site.com 80

可能会向您说明正在发生的事情。对于ISP来说,无论人们如何思考,任意阻止任何事情都不符合最佳利益。 (至少在美国这里没有)。阻止/过滤会给必须处理这些规则的设备带来负担(检查此数据包是否在规则1,nope,规则2,nope中)。 ISP设备(核心)意味着尽快传出。不要“为N个用户坐下来处理这个数据包”