前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >端口转发知多少?局域网向外看,互联网向内传,这一行指令,够了!

端口转发知多少?局域网向外看,互联网向内传,这一行指令,够了!

作者头像
程序员小助手
发布2020-04-08 14:49:38
2.4K0
发布2020-04-08 14:49:38
举报
文章被收录于专栏:程序员小助手程序员小助手

请观看本文前50行,即可搞定。后边的请忽略。

前言

为了科研,祖国的技术人员突破国内外一道道阻拦,求取真经。

对知识和真理的热爱,任什么艰难险阻也无法阻挡前进的脚步!

科技强国。

内网穿透

本文假设题主在国内出差,公司内部局域网有一台电脑W,可以访问外网。题主有一台云服务器S,有公网IP(2.2.2.2)。下面阐述一下,如何借由S访问W的资源。

网络示意图:

我们看到,难点是没有公网的局域网电脑W,在网络上没有办法被定位到。所以,需要用到 服务器 - 客户端 的通讯方式,让有公网IP的服务器S,将访问内容转发到特定的客户端。而这个客户端只需要能能够与服务器通讯上就可以了

软件来了

既然需要一个 server-client 的通讯,就需要这么一款软件。示意图如下。

是的,你们猜到了,要推荐软件了。

gost - GO Simple Tunnel GO语言实现的安全隧道

https://github.com/ginuerzh/gost

功能特性有这么长一列:

  • 多端口监听
  • 可设置转发代理,支持多级转发(代理链)
  • 支持标准HTTP/HTTPS/HTTP2/SOCKS4(A)/SOCKS5代理协议
  • Web代理支持探测防御
  • SOCKS5代理支持TLS协商加密
  • 支持多种隧道类型
  • Tunnel UDP over TCP
  • 本地/远程TCP/UDP端口转发
  • TCP/UDP透明代理
  • 支持Shadowsocks(TCP/UDP)协议
  • 支持SNI代理
  • 权限控制
  • 负载均衡
  • 路由控制
  • DNS解析和代理
  • TUN/TAP设备

怎么选择,内网穿透使用哪个方式?文档都给清楚了。我们只需一个端口转发功能,GOST提供的远程端口转发功能有好几种。

用法

端口转发服务节点的配置与普通的代理节点有所不同:

scheme://[bind_address]:port/[host]:hostport[,[host]:hostport]?ip=[host]:hostport][,[host]:hostport]]

scheme - 端口转发模式, 本地端口转发: tcp, udp; 远程端口转发: rtcp, rudp; 转发隧道: tls, kcp等传输类型。

[bind_address]:port - 本地/远程绑定地址。

[host]:hostport[,[host]:hostport] - (可选, 2.6+) 目标访问地址,支持以逗号分割的多地址形式。

参数说明

ip - (可选, 2.8+) 也可以通过此参数来指定目标地址。

strategy - 指定节点选择策略,round - 轮询,random - 随机, fifo - 自上而下。默认值为round

max_fails - (2.8.1+) 指定节点连接的最大失败次数,当与一个节点建立连接失败次数超过此设定值时,此节点会被标记为死亡节点(Dead),死亡节点不会被选择使用。默认值为1。

fail_timeout - (2.8.1+) 指定死亡节点的超时时间,当一个节点被标记为死亡节点后,在此设定的时间间隔内不会被选择使用,超过此设定时间间隔后,会再次参与节点选择。默认为30秒。

SSH端口转发模式

当代理链末端(最后一个-F参数)为forward+ssh类型时,GOST会直接使用SSH的远程端口转发功能:

gost -L=rtcp://:2222/192.168.1.1:22 -F forward+ssh://:2222

服务端可以是标准的SSH程序,也可以是GOST的SSH转发模式:

gost -L forward+ssh://:2222

scheme必须是forward+ssh

TCP远程端口转发

将目标TCP端口B映射到本地TCP端口A,所有到端口B上的数据会被转发到端口A。此功能类似于SSH的远程端口转发功能。

gost -L=rtcp://:2222/192.168.1.1:22 [-F=... -F=socks5://172.24.10.1:1080]

将172.24.10.1:2222上的数据(通过代理链)转发到192.168.1.1:22上。

结语

如果我没猜错,你要的就是这个。

我都用了好些年了,稳定高效,全程开源,代码修改很!方!便!

Happy coding :-)

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-03-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员小助手 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 内网穿透
  • 软件来了
  • 用法
  • SSH端口转发模式
  • TCP远程端口转发
  • 结语
相关产品与服务
弹性公网 IP
弹性公网 IP(Elastic IP,EIP)是可以独立购买和持有,且在某个地域下固定不变的公网 IP 地址,可以与 CVM、NAT 网关、弹性网卡和高可用虚拟 IP 等云资源绑定,提供访问公网和被公网访问能力;还可与云资源的生命周期解耦合,单独进行操作;同时提供多种计费模式,您可以根据业务特点灵活选择,以降低公网成本。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档