Files
my-vault/00_Inbox/Clippings/2023/10/UBNT-EdgeRouter-XImplementationPPPoE-IPv6-Minad.md
T

95 lines
6.7 KiB
Markdown
Raw Normal View History

2026-01-05 13:03:55 +08:00
---
page-title: "用UBNT EdgeRouter X实现PPPoE拨号与IPv6 - Minaduki's Blog"
url: https://www.minaduki.cn/2022/04/16/ubnt-edgerouter-x-pppoe-and-ipv6/
date: "2023-10-17 20:37:41"
---
## Step 0:前言
疫情原因,学校开始了可能是近两年最严格的一次封校,进不了学校就只好在家里看看实验室文档,玩玩电脑,效率自然是不高的,于是就想着整点活干干,虽然和学校的事情并没什么相干,但是一来积累点经验,二来也可以减轻摸鱼的罪恶感。
一来二去,还是盯上了出租屋的网络,本来的网络环境也就一般,入户一个PT622电信光猫,光猫拨号,然后由于光猫没有WiFi房东还接了一个小米路由器4Q,这下不仅有复古风格的全百兆接口,更有现代乃至后现代风格的NAT叠叠乐拓扑,属实难绷。
不过话又说回来,其实网络本来不一定就要用顶级的配置,我始终觉得,符合需求并具有一定的拓展空间,就是最佳的方案,所以我现在若是像去年复习的时候一样每天到家玩会手机就睡,这套方案倒也没什么大不了的,不是自家的房子也不用考虑什么拓展;但是现在家里有了两个电脑,这百兆的内网带宽就有些捉襟见肘了,剪个视频传素材都能卡,再加上双重NAT导致和无耻联机都费劲,所以确实应该稍微改造一下。
正好手头有前几天从臧老板坑蒙拐骗来的一台UBNT EdgeRouter X,久仰优倍快的大名,今天就来配置看看。
## Step 1:光猫改桥接
鉴于寒假里的经验,找电信师傅肯定是行不通的,况且这也不是我自己的宽带,所以最好还是留下能够恢复如初的口子。
PT622这款光猫还是比较古老的,在论坛上很快就找到了漏洞,可以用备份配置文件的方式破解:
在用普通用户登录光猫后,打开`/cgi-bin/upgrade.asp`页面,点击页面中的ROMFILE BACKUP按钮,在下载的`romfile.cfg`文件里,搜索`web_passwd`字段,就能够找到telecomadmin的超级密码。
> 家里光猫的passwd文件还在紧锣密鼓的破解中,但是显然用CPU爆破的话性能不够,目前在尝试用HashCat调用CUDA使用恰当的正则表达式猜测,如果后续有结果会更新。
登陆光猫后,定位到网络->宽带设置->Internet设置,连接名称选`4_INTERNET_B_VID_`,将模式改为Bridge,其他不用管,确认即可。如果有必要,建议先备份宽带的用户名和密码。
> 参考:[再发一次友华PT622光猫里面的密码,方便外面的人查找](https://www.right.com.cn/FORUM/forum.php?mod=viewthread&tid=934706#pid9110653 "再发一次友华PT622光猫里面的密码,方便外面的人查找")
## Step 2:配置主路由
UBNT的设备确实比较高端,似乎还更鼓励用户通过命令行的方式对设备进行配置,不过好在今天的配置项足够简单,用Web UI就可以完成。
对于PPPoE这样的基本操作,UBNT的EdgeOS提供了几个Wizard,可以配置基本的组网方式,包括多个LAN或者链路聚合等情况,普通上网只需要选择Basic Setup,选择PPPoE并输入账号密码即可。为了使用IPv6,所以我这里选上了Enable DHCPv6 Prefix Delegation,并设置前缀长度为60,然后完成向导并重启路由器。
重启后,还需要修改路由器的配置树,启用`interfaces / ethernet / eth0 / pppoe / 0 / ipv6 / address / autoconf``interfaces / ethernet / eth0 / pppoe / 0 / ipv6 / enable`两个条目,即点击树中该项目右侧的加号,然后应用修改,稍等片刻就能获取到IPv6地址了。
> 参考:[七海网络教学 1: EdgeRouter 启用IPv6](https://www.bilibili.com/video/av90572075 "七海网络教学 1: EdgeRouter 启用IPv6")
## Step 3:配置UPnP和硬件加速
使用EdgeOS的UPnP Wizard,添加一个Internal Interface为switch0External Interface为pppoe0的UPnP转发,即可完成UPnP的配置。
不过根据一些文章的说法,UPnP服务并不安全,更推荐的做法是使用更为现代的UPnP2,EdgeRouter支持UPnP2,但是仅能通过CLI开启。
> UPnP2就很安全吗?
> 其实也未必,有不少研究表示UPnP2也有可以利用的漏洞。事实上,在引入任何“自动”的工具之前,都应该仔细权衡利弊,因为一旦选择了便利性,就必然会牺牲安全作为代价,风险控制和损害管制是设计一个系统时不可缺少的细节。
首先,删除已有的UPnP配置项:
```
configure
delete service upnp
commit
save
exit
```
然后,配置UPnP2
```
configure
set service upnp2 listen-on switch0
set service upnp2 wan pppoe0
set service upnp2 secure-mode enable
set service upnp2 nat-pmp enable
commit
save
exit
```
重启后,可以使用`show upnp2 rules`查看配置结果。
> Web UI自带的Web Shell登录进去要卡一段时间,是正常现象,不是出问题了。
> 而且这玩意儿重启好慢啊,可能是因为MIPS架构的吧。
>
> 参考:[UPnP with EdgeRouter: Dont do it! · GitHub](https://gist.github.com/plembo/c7f596ce6e690c6c022a6153c674f471 "UPnP with EdgeRouter: Don't do it! · GitHub")
> [Ubiquiti EdgeRouter 配置 UPnP2 啟用方法](https://www.sakamoto.blog/ubiquiti-edgerouter-upnp2/ "Ubiquiti EdgeRouter 配置 UPnP2 啟用方法")
另外,UBNT的设备内置了用于转发加速的硬件,按照网友的测试,如果使用软件转发仅有百兆水平,而开启硬件加速就可以跑满。但硬件加速并不是默认开启的,需要手动通过命令行启用:
```
configure
set system offload hwnat enable
commit
save
```
按照官方推荐,启用后最好重启,可以使用`show ubnt offload`命令查看硬件加速是否加载成功。
> 参考:[EdgeMax 如何开启 IP offload 进行硬件加速](https://help.ui.com.cn/articles/115000117142/ "EdgeMax - 如何开启 IP offload 进行硬件加速")
> [EdgeRouter拨号200M宽带一定务必打开PPPoE offload](https://www.chiphell.com/thread-1233957-1-1.html "EdgeRouter拨号200M宽带一定务必打开PPPoE offload")
## Step -1:尾声
其实这篇文章的篇幅实在是不太长,但是为了记录经验,所以还是写了下来。而且这个篇幅不应该作为独立的一篇,更适合作为Operation Reloaded的一个额外的部分附在最后,不过想了想,我还是把它单独发了,一方面是久了没写东西,需要写点“要发出来的”文章熟悉熟悉感觉,而不是写一堆只有自己看得懂的半吊子流水账屯在草稿箱里,另一方面,我欠的债也属实有点多,除了一直在规划的Operation Rebirth记录和百T纪念之外,社团里我还欠了一篇远程访问的推送没写(欠了一年多了),把这篇发出来,也算是给自己提供下继续的动力吧。