通过路由器端口映射,对局域网内服务器进行ssh登录

需求分析

多台服务器连在同一个路由器下,其中一台进行认证上网,其他服务器也可以正常上网。但是,路由器下机器的IP均由路由器自动分配,这个IP在外网是无法访问到的(也就是只有连在这个路由器下的机器之间可以相互访问)其他可上网的电脑均访问不到,即使进行上网认证的那台机器也不能被外网访问到。

解决方法

对该路由器下的每台机器进行端口映射(类似内网穿透)

原理

由于路由器的外网IP(入口IP)仅有一个,因此访问此IP是无法找到该路由器下的机器的,但通过为每台机器手动分配一个外部端口后,ssh登录时指定要访问的机器的服务端口,就可以找到路由器下对应的机器,进而登录到电脑。

具体方法

  1. 进行IP与MAC绑定: 防止IP变动:
    对于TP-Link路由器,在【IP与MAC绑定】下启动ARP绑定,并在ARP映射表中启动要绑定的机器。
    通过路由器端口映射,对局域网内服务器进行ssh登录_第1张图片
  2. 配置端口映射:
  • 2.1 查询入口IP:查询该路由器获取到的IP地址,这是用于访问路由器下每台机器的IP地址。
    通过路由器端口映射,对局域网内服务器进行ssh登录_第2张图片

  • 2.2 配置端口映射:选择【转发规则】->【虚拟服务器】,添加条目,配置内容及解释如下:

    • 服务(外部)端口:用于找到哪台服务器的端口,即ssh访问机器时,需要指定的端口,尽量在9000以上。
    • 内部端口:由于我们要使用ssh登录,因此这里指定ssh登录的默认端口22.
    • IP地址:由路由器为每台机器分配的IP,在【DHCP服务器】->【客户端列表】中查询每台机器对应的IP。
    • 协议:选择 “ALL” 即可
      通过路由器端口映射,对局域网内服务器进行ssh登录_第3张图片

ssh登录命令:

登录命令: ssh username@入口IP -p 端口号
例如:ssh [email protected] -p 9085

参考链接1:外网ssh访问路由器内的ubuntu服务器
参考链接2:[传统界面] 虚拟服务器设置指导

如遇问题欢迎进行留言,相互讨论学习。

你可能感兴趣的:(解决问题,路由器,局域网)