Cisco 837不正确传递UDP通信(是:DNS查询问题)

我们有一个ADSL线路设置 – > Cisco 837 ADSL路由器 – > Zyxel ZyWall 35防火墙/ NAT – >交换机 – > LAN。

多年来一直很好,突然DNSparsing停止了从局域网到公用DNS服务器的工作。 没有我知道的变化,所以我不能恢复任何东西。

目前的行为:

  • 来自局域网使用TCP的DNS请求出现在oubound防火墙日志中,在思科debugging日志中,在DNS服务器上的tcpdump中的dns-server-firewall中,答案回来了,它工作正常。
  • 出站防火墙日志中,Ciscodebugging日志中显示了使用UDP从局域网发出的DNS请求,但未显示在DNS服务器上的dns-server-firewall(不在tcpdump中)超时。
  • 来自思科使用UDP的DNS请求出现在dns服务器防火墙和DNS服务器上的tcpdump,收到答案,工作正常。
  • 到端口53的netcat连接或TCP的随机端口显示在dns-server-firewall中
  • netcat到端口53的连接或UDP的随机端口不会显示在dns-server-firewall中

总结 :TCP似乎很好通过。 UDP通过ADSL工作在思科,它从局域网到思科工作,但似乎没有正确地跨越Cisco 837。 更新:通过netcat确认,来自局域网的任何UDPstream量都受到影响,而不仅仅是到端口53的stream量。

更新 :如果我将防火墙的外部IP更改为子网中的任何其他IP,则开始工作。 当我把它放回去,它停止工作。 我现在怀疑这是一个ISP问题(这听起来似乎合理?),并删除思科configuration。

  • 它只是udp或tcp也受到影响?
  • 有没有IPv4 / IPv6的问题(有时路由器会感到困惑,你看到的只是真正便宜的路由器)

一种testing方法是(使用Google DNS服务器):

$ dig @8.8.8.8 example.com +noall +answer +notcp +ignore # udp only example.com. 50270 IN A 192.0.43.10 ;; Received 45 bytes from 8.8.8.8#53(8.8.8.8) in 29 ms $ dig -4 example.com +noall +answer +notcp +ignore # udp only/ipv4 only example.com. 50270 IN A 192.0.43.10 $ dig -6 example.com +noall +answer +notcp +ignore # udp only/ipv6 only example.com. 50270 IN A 192.0.43.10 ;; Received 45 bytes from 8.8.8.8#53(8.8.8.8) in 29 ms $ dig @8.8.8.8 example.com +noall +answer +tcp # tcp only example.com. 50256 IN A 192.0.43.10 ;; Received 45 bytes from 8.8.8.8#53(8.8.8.8) in 30 ms $ dig -4 example.com +noall +answer +tcp # tcp only/ipv4 only example.com. 50256 IN A 192.0.43.10 ;; Received 45 bytes from 8.8.8.8#53(8.8.8.8) in 30 ms $ dig -6 example.com +noall +answer +tcp # tcp only/ipv6 only example.com. 50256 IN A 192.0.43.10 ;; Received 45 bytes from 8.8.8.8#53(8.8.8.8) in 30 ms 

也:

  • 你有一个tcpdump吗?
  • 也许得到一些便宜的VPS / EC2 /机架空间实例,并打开端口53( netcat是你的朋友)。 用telnettesting你可以连接 – 只是为了确保你的小包确实超出了你的防火墙。

1先拔掉并插回去。检查Zyxel上的网关设置,确保它指向了Cisco DSL。 然后检查以确保在Cisco路由器pipe理上的端口。 然后检查以确保cisco路由器上的ACL将允许Zyxel连接到它。 从zyxel ping任何响应的思科路由器。 最近有什么变化吗? 固件,恢复,什么?

实际上Google Code上有一篇很好的文章 ,介绍了如何解决DNS问题。

您可能想要testing另一个DNS,例如您的ISP的DNS或OpenDNS 。

我有一种感觉,你的防火墙无法达到8.8.8.8。