0

通过我的家庭 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. 高级服务器日志中未记录任何请求

分析:以上内容让我相信,一定有防火墙过滤掉路由中的请求,但只过滤端口 80 上的请求。我看到了几个可以设置防火墙的选项

  1. 在家里的调制解调器中
  2. 由我的 ISP 在他们的路线上实施(他们是否出于某种原因阻止了该网站)?
  3. 在服务器上(由于某种原因它没有为我的公共 IP 提供服务)

如您所料,ISP 和服务器托管公司各自将过错归咎于对方。我想调查一下,问题出在哪里。

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

  • 是不是被调制解调器阻塞了?
  • 它到达服务器了吗?
  • 服务器是否回答(SYN/ACK),并且回答被阻止/转储?
4

1 回答 1

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 中,不,规则 2,不)。ISP 设备(核心)旨在尽快通过。不是“为 N 数量的用户坐下来处理这个数据包”

于 2013-05-22T14:19:54.427 回答