如何检查端口转发功能是否开启?


11

我刚刚为自己的网络设置了DNS服务器,许多在线指南建议确保未启用端口53上的端口转发。

我不清楚的是:我应该在路由器级别还是在防火墙级别配置它?如果应该在防火墙上执行此操作,该如何在Ubuntu Server 12.04上执行此操作?

我的家庭网络有几个客户端,一个ESXi服务器和一个家庭路由器。ESXi内的VM之一是DNS服务器(在Ubuntu Server 12.04上运行),该服务器用于处理本地DNS请求,但也配置为将对外部IP的请求转发到Google的DNS服务器。


1
这将有助于提供您的网络拓扑。您的DNS服务器位于路由器后面吗?您的内部网络是在私有子网中还是在公共子网中?路由器是另一台服务器,现成的家用路由器还是像Cisco这样的企业级路由器?DNS服务器是否应该处理来自网络外部或仅来自内部的请求?DNS服务器上正在运行什么操作系统?
Patrick

@Patrick你说的对,我已经更新了问题
user1301428 2014年

Answers:


16

应该在DNS服务器和外界之间的任何设备上配置该文件。默认情况下,几乎所有功能都禁用AFAIK端口转发,因此您不必为此担心。如果您使用的是住宅网络设备,则Web界面中应该有端口转发配置选项。要在Ubuntu上检查端口转发设置,请使用iptables:

$ sudo iptables -t nat -vnL

要最终检查网络中是否有转发的端口,请使用netcat通过外部IP连接到该端口:

$ nc -vu [external ip] 53

您必须监视DNS服务器上的连接以查看netcat连接,因为由于UDP的无状态性质,netcat可能会错误地报告连接成功


1
保留-u使用默认TCP协议而不是UDP 的选项。
Serge Stroobandt
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.