请教个外网访问内网服务器的问题

2019-04-03 19:21:10 +08:00
 ccadb
局域网内某台机器 A ( windows 系统,拥有操作权) IP 地址是 10.42.71.X,已经将 8088 端口映射到了外网,请问有什么办法使得外网电脑可以通过这个已经映射的 8088 端口访问局域网内另一台服务器 B ( A 与 B 可以互访)。尝试了下 openvpn,但是配置文件实在是不晓得怎么写,还请赐教下。
2400 次点击
所在节点    问与答
11 条回复
sigup
2019-04-03 19:50:48 +08:00
假设 B 的 IP 是 10.42.71.Y,你要访问 B 的 22 端口,在 A 上执行
ncat --sh-exec "ncat 10.42.71.Y 22" -l 8088 --keep-open

外网访问 8088 就是 B 的 22 端口了
catalina
2019-04-03 20:18:07 +08:00
openvpn 的转发可能会出一些问题,前几次我试过用 ssh 端口映射把 OpenVPN TCP 端口映射到公网服务器上,结果手机连接的时候弹了 EOF_ERROR。。。
nanaw
2019-04-03 20:41:18 +08:00
v2ray 可以解决这个问题
ccadb
2019-04-03 21:38:17 +08:00
@sigup 服务器不是 linux,是 windows server 2008 的系统
sigup
2019-04-03 22:12:13 +08:00
@ccadb ncat 有 Windows 版本。。
用系统自带的也可以
netsh interface portproxy add v4tov4 listenport=8088 listenaddress=0.0.0.0 connectport=22 connectaddress=10.42.71.Y
StarryFK
2019-04-03 22:14:25 +08:00
Windows 下不太懂,这个实现一般用到的技术是反向代理,Linux 下一般用 Nginx
ThirdFlame
2019-04-03 22:33:47 +08:00
服务器 A
ThirdFlame
2019-04-03 22:34:21 +08:00
服务器 A 在做一条端口映射即可。8888 -> 服务器 B:某端口

端口映射时可以这样级联的
MonoLogueChi
2019-04-03 23:49:12 +08:00
把 B 的端口映射到 A 上
crab
2019-04-03 23:57:21 +08:00
把机器 A 的 3389 映射出来连上远程桌面再去操作机器 B - -!
ccadb
2019-04-04 01:22:00 +08:00
@sigup 太感谢了,确实就是一条简单的命令
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=8088 connectaddress=10.42.72.222 connectport=5000

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/551790

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX