javaSocket不同电脑通信问题(wiresharkwindows不能抓包)

java Socket   C/S结构的简单通信

问题描述:本地运行  Server绑定 8080端口   client 采用 127.0.0.1可以访问

异地 用两台电脑  电脑A Server 绑定8080   电脑B运行 client 不能访问

解决办法局域网可以通过路由的端口绑定方式

原理

基础ip信息

同一局域网内:电脑A被分配的IP为 192.168.2.168

                        电脑B被分配的IP为192.168.2.182(window下IPconfig)

                      将电脑BClient端的socket的host设置为 电脑A 的192.168,2.168

路由器端口映射

外网访问内网的端口进行通信:

        需要具体设置路由器进行端口映射


此时将 电脑A 的  ip:port       192.168.2.182 :2080【按照如上图配置即可】

绑定到路由网关   IP:port       192.168.2.1 :2080 【不用实际操作】

访问 192.168.2.1 :8080 地址会自动 转发到 电脑A的 192.168.2.182 :8080,注意A的本地ip需要固定

额外解决Wireshark不能抓取数据的问题(window直接访问不经过网卡)

再用Wireshark抓包工具进行查看,就能看到数据包了


如果有用,给个赞呗!

猜你喜欢

转载自blog.csdn.net/wanxiaoderen/article/details/79510353