怎么通过端口映射, 让上级的路由器对外网开放??

2018-10-17 14:24:20 +08:00
 rwecho

家里面有两个路由器: 路由器 1 和路由器 2, 1 是电线宽带送的带光猫的, 2 是网件 R7000 刷了梅林系统. 现在路由器 2 可以通过外网访问, 如下图描述

谢谢各位.

7203 次点击
所在节点    Linux
35 条回复
andrewhxism
2018-10-17 14:29:16 +08:00
不能
yukiww233
2018-10-17 14:29:41 +08:00
路由器 2 上面跑一个 vpn,直接连进来就行
andrewhxism
2018-10-17 14:30:54 +08:00
最简单的办法,把二级路由连一级路由的网线接在 LAN 口,不接 WA,把二级路由当交换机用
rwecho
2018-10-17 14:32:53 +08:00
@andrewhxism 现在 router2 连接 router1 就是通过 lan 口. 他们直接就是平级的, 都是 192.168.1.* 网段.
debuggerx
2018-10-17 14:38:57 +08:00
如果是 http,可以用 nginx 设置 proxy_pass 反代。nginx 跑在路由 2 或者手机 3,4,5 都可以
rwecho
2018-10-17 14:41:55 +08:00
现在如果想管理 router1 , 我得在家里打开一个电脑, 然后通过电脑的浏览器 访问 192.168.1.1
@yukiww233 @andrewhxism

有没有可能通过 iptables 把访问 router2 8089 端口的流量都转到 192.168.1.1:80
对 iptables 不熟悉.
rwecho
2018-10-17 14:42:29 +08:00
@debuggerx 是个好方法, 我一会设置一下看看呢.
just1
2018-10-17 14:43:55 +08:00
三楼的方法,做交换机使用,网线两端都是 lan 口,结贴。
rwecho
2018-10-17 14:46:30 +08:00
@just1 现在就是交换机使用呢. 关键是端口映射这,

外部端口 内部 ip 内部端口 协议
8003 192.168.1.1 80 tcp

增加之后, 8003 并没有起作用.
just1
2018-10-17 14:51:22 +08:00
@rwecho #9 听你这么说就不是交换机啊,图上也不是当交换机来用。当交换机,192.168.2.0/24 是不存在的。
mjl371
2018-10-17 14:57:33 +08:00
没看懂楼主的描述和网络结构,你的光猫是桥接的还是一级路由还是二级路由还是交换机?
chengxiao
2018-10-17 14:59:57 +08:00
这个图是用什么画的?
SpartzTao
2018-10-17 15:12:26 +08:00
接 LAN 口的话,DDNS 都能完成
接 WLAN 口的话,frp、ngrok、花生壳应该都能解决[狗头]
wsfzjwps
2018-10-17 15:15:36 +08:00
楼主你这,拨号在哪? 路由器 1 是电信那个 光猫路由一体的吧。
wr410
2018-10-17 15:20:33 +08:00
端口映射是工作在 SNAT 上的,也就是 WAN->LAN,所以你配置 8003 在 LAN 里找不到 1 网段,自然就通不了。
既然能从 1.1->1.3,那直接在 1.1 上配置开放自己的端口就好了啊。
如果非要过 1.3 的话,考虑使用端口转发而不是端口映射。
rwecho
2018-10-17 15:28:48 +08:00
路由器 1 是电信公司送的, 光猫+路由器一体机.
@mjl371 @wsfzjwps 光猫就是 router1
@chengxiao visio
@SpartzTao router2 就是通过花生壳访问的, 现在是想访问 router1

@wr410 嗯,非常同意你的说法, 但是 1.1 是电信送的, 功能非常有限, 什么也做不了.
你知道怎么设置端口转发吗?
或者像 @debuggerx 说的那样通过 nginx?
k7262140
2018-10-17 15:36:54 +08:00
frp 中配置 转发就行了.比如这样 123.1 是我路由器. 123.164 是另外一个
```
[bby_web]
type = http
local_ip = 192.168.123.1
local_port = 80

[bby_donkey]
type = http
local_ip = 192.168.123.164
local_port = 4080

[bby_aria]
type = http
local_ip = 192.168.123.1
local_port = 6800
```
annielong
2018-10-17 15:39:32 +08:00
没看懂图,router1 应该是拨号,router2 应该是在 router1 下级,本身网络是通过 router1 再到的 router2 最后到下面手机的,外网端口不知道电信封没封,联通是都封完的,你通过花生壳进行映射是使用花生壳的业务,怀疑 router1 的端口都没开,或者在 router2 ping 一下 router1,看通不通
debuggerx
2018-10-17 15:43:30 +08:00
如果 router2 能外网访问是因为用了花生壳的内网穿透服务,那么想再访问上层路由里的设备就只能靠代理了,也就是楼上提到的 frp、ngrok,或者 nginx(仅限页面)
实际我之前家里就是利用 nginx 做类似的事情,为了能够在公网通过 web 管理页修改家里光猫和路由的配置
andrewhxism
2018-10-17 16:13:37 +08:00
@rwecho 你仔细看看我的评论,如果你已经把二级路由当作交换机了,2.x 网段的地址是谁分的?网关是哪个?像你说的这种组网,手机应该上不了网才对,肯定还是二级路由工作在路由模式,虽然你用了 LAN 口连接,是不是你在配置里面将这个 LAN 口当作 WAN 口配的?

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

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

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

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

© 2021 V2EX