家里那台老旧的华为光猫已经服役五年多了,虽然WiFi信号还算稳定,但每次看到设备列表里那些陌生的终端连接就让人心里发毛。更糟的是,最近想用IPv6访问一些资源时,发现光猫的IPv6分配总是时灵时不灵。作为一名轻度技术爱好者,我决定用闲置的极路由4刷个OpenWrt来解决这些问题——既能隔离邻居的ARP攻击,又能稳定获取IPv6地址。
在开始之前,我们需要确认几个关键点:光猫是否支持IPv6、极路由4的硬件版本是否兼容OpenWrt,以及必要的工具准备。我用的华为HN8145X6光猫默认开启了IPv6功能,但不同运营商可能配置不同,建议先用电脑直连光猫测试能否获取到240开头的IPv6地址。
极路由4增强版(HC5962)的刷机过程相对简单,但需要注意:
必备工具:
刷机步骤:
注意:刷机过程中切勿断电,整个过程约3-5分钟。完成后建议先不插网线,避免与现有网络冲突。
首次登录OpenWrt的Web界面(默认IP 192.168.1.1),我们需要进行几项基础设置:
bash复制opkg update
opkg install luci-i18n-base-zh-cn
bash复制sed -i 's/downloads.openwrt.org/mirrors.ustc.edu.cn\/openwrt/g' /etc/opkg/distfeeds.conf
opkg update
网络接口的初始配置建议保持默认,特别是LAN口的DHCP服务不要关闭。防火墙设置也暂时不需要调整,后续中继成功后再根据需求修改。
这是整个过程中最容易出错的部分,我们需要将极路由4作为无线客户端连接到光猫的WiFi网络。以常见的ChinaNet-XXXX为例:
扫描可用网络:
加入光猫WiFi:
接口绑定:
常见问题排查:
| 问题现象 | 可能原因 | 解决方案 |
|---|---|---|
| 无法扫描到光猫WiFi | 频道不兼容 | 尝试手动设置频道宽度为20MHz |
| 连接后频繁断开 | 信号强度不足 | 调整路由器位置或改用5G频段 |
| 获取不到IP地址 | 认证失败 | 检查密码和加密方式(建议WPA2-PSK) |
成功中继后,我们需要专门配置IPv6获取方式。与IPv4不同,IPv6的DHCPv6客户端需要额外创建一个虚拟接口:
创建DHCPv6客户端接口:
关键参数设置:
防火墙设置:
验证IPv6是否正常工作:
bash复制ping6 ipv6.google.com
ifconfig | grep 240
如果遇到"不存在的接口"错误,通常是接口绑定顺序问题。正确的配置流程应该是:
成功获取IPv6后,我们可以进一步优化网络环境:
ARP防护:
bash复制opkg install arptables
arptables -A INPUT --src-mac ! xx:xx:xx:xx:xx:xx -j DROP
IPv6防火墙规则:
bash复制ip6tables -A FORWARD -p tcp --tcp-flags SYN SYN -m limit --limit 1/s -j ACCEPT
ip6tables -A FORWARD -p tcp --tcp-flags SYN SYN -j DROP
无线优化参数:
bash复制uci set wireless.radio0.country='CN'
uci set wireless.radio0.channel='auto'
uci commit
/etc/init.d/network restart
对于小型公寓环境,建议开启流量监控和限速功能。OpenWrt的qos-scripts包可以基于IP或MAC地址进行带宽控制,避免个别设备占用全部带宽。
基础网络搭建完成后,可以考虑实现更多实用功能:
IPv6 DDNS:使用阿里云API实现动态域名解析
bash复制opkg install ddns-scripts luci-app-ddns
广告过滤:安装AdGuard Home
bash复制opkg install adguardhome
网络存储:通过USB接口连接移动硬盘
bash复制opkg install block-mount kmod-usb-storage kmod-fs-ext4
实测在极路由4上,开启全部功能后内存占用约60%,CPU负载平均在30%左右,完全能满足20台设备同时接入的需求。无线中继模式下,5G频段的实际传输速率能达到光猫直连的85%左右,延迟增加约3-5ms