有关端口转发和数据包的一些疑问

标记为已读

我试图在我的Linux机器中打开一个端口,但是遇到了一些麻烦。我查阅了有关端口转发的一些信息,发现这是什么?端口转发及其用途是什么?和jcrowfordor的帖子(带有图片的长帖子)帮助我更好地理解了它。

但是打开端口仍然有一些麻烦。我查阅了教程和视频,它总是说:

  • 1-转发路由器中的端口
  • 2下载ufw
  • 3-在ufw中创建一个规则,以允许到该端口的入站流量

我做了所有这些,但是没有用。也许我做错了什么?我仍然对端口转发有一些疑问,因此我认为清除这些疑问可能有助于我弄清楚我在做错什么。

另外,整个防火墙配置+路由器端口转发可能是不必要的,因为我有一个Linux Mint VM,它接受入站流量到使用netcat绑定的任何端口(我使用sudo nc -l portnumber)。这是为什么?除了禁用Linux Mint的防火墙外,我没有进行任何配置。如果禁用其他Linux的防火墙,它仍会拒绝连接。

我对端口转发的怀疑是:

  1. 当网络中的计算机要与该网络中的另一台计算机通信时,发送到路由器的数据包是否算作入站流量?如果是这样,为了使目标计算机能够接收它,我必须转发路由器上的端口,对吗?
  2. 如果我希望两台或更多台计算机能够在同一端口上接收连接怎么办?我是否必须为所有这些计算机在路由器中转发该端口?
  3. 如果是,路由器如何知道应该将入站流量发送到哪台计算机?当它来自网络时和来自网络外时会发生什么?
弗兰克·托马斯

1)不。它直接穿过局域网服务器而无需穿过路由器(路由器WAN上永远不会收到它)。大多数商用路由器不会让内部主机连接到路由器WAN。那些确实支持NAT发夹的工具。要测试NAT端口转发规则而不发夹,您必须从另一个网络进行测试。

2)如果要在两个不同的盒子上转发tcp \ 80,则必须使用不同的外部端口号,以便WAN:80-> PC1:80和WAN:81-> PC2:80。WAN端的端口号必须唯一,否则无法告诉您要使用的服务器,并且NAT转发始终是单播的,因此您无法将数据包发送到两个内部服务器。

3)NAT规则要求您指定将接收端口上传入的数据包的LAN服务器的本地IP地址。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章