前言
之前在连接其他人kafka集群的时候,连接9092端口成功,但是生产数据一直报了一个IP无法进行连接错误。原因是对方在配置文件server.properties里面的填写的是局域网的IP,而通过端口映射出来的IP不同,集群在生产消息是通过配置文件将数据生产到对应broker上。在对方不修改配置文件的情况下,只能想办法实现端口转发。类似的问题还有端口反向代理后,对方服务执行了重定向导致后面访问的是局域网IP,这些可以通过端口转发请求解决。此转发方案仅适用于TCP端口,无法以这种方式转发UDP端口。
Netsh介绍
从Windows XP开始,Microsoft Windows具有内置功能来设置网络端口转发。因此,到本地端口的任何传入TCP连接(IPv4或IPv6)都可以重定向到另一个本地端口,甚至重定向到远程计算机上的端口。并且系统不必具有侦听此端口的服务。
在Linux中,使用iptables非常简单地配置端口重定向。在Windows Server系统上,路由和远程访问服务(RRAS)用于组织端口转发。但是,有一种更简单的方法来配置端口转发,该方法在任何版本的Windows中都可以正常工作。
可以使用命令Netsh的Portproxy模式配置Windows中的端口转发。该命令的语法如下:
netsh interface portproxy add v4tov4 listenaddress=localaddress listenport=localport connectaddress=destaddress connectport

本文详细介绍了如何使用Windows内置的Netsh工具进行端口转发,包括准备工作、具体操作步骤及注意事项,解决了因IP配置不当导致的Kafka集群连接问题。
最低0.47元/天 解锁文章
352

被折叠的 条评论
为什么被折叠?



