前言

之前在宿舍一直使用极路由或者K2等硬路由,最近升级了3965U软路由,使用OpenWrt系统,主要是为了全局科学上网更加方便,这里记录一下软路由OpenWrt系统下如何进行锐捷拨号和IPv6设置,原则上适用所有X86软路由

准备

  • OpenWrt安装包,博主使用的eSir的9月1号精简小包,请大家自行网络搜索下载,或者需要的朋友可以留邮箱等待发送,因一些特殊原因这里不公布
  • mentohust插件,下载地址:

    链接:https://pan.baidu.com/s/1PiRT7gID5J8m1UH6j1Y1qw
    提取码:ns82

  • X86软路由一台

过程

  • 刷入OpenWrt系统

    该过程请自行学习,和安装PC系统过程类似,PE刷入即可

  • 安装mentohust锐捷拨号认证

    1、sudo cp libnotify.so.1 /usr/lib

    把 libnotify.so.1复制到 /usr/lib,这一步可以省略,不影响使用

    2、opkg install mentohust_0.3.1-1_x86_64.ipk

    安装mentohust插件

    3、opkg install libpcap1_1.9.0-2_x86_64.ipk

    安装libpcap插件,如果使用eSir的固件可以忽略该步骤

    4、拨号认证

    哈工大校园网如下格式进行:

    mentohust -uxxx -pxxx -a1 -d1 -neth1

    -u后面为账号;-p后面为密码;-n后面为wan口网卡名称,也就是插入网线的网口名称,根据自己实际情况修改即可

    上述命令直接运行,查看是否能正常上网,可以后关闭终端

    5、设置开机自动拨号上网

    最简单的开机运行方式:在/etc/rc.local中添加运行脚本:

    注意:该命令要放在rc.local的exit 0之前
    sleep 30    #延迟30秒
    /usr/sbin/mentohust -uxxx -pxxx  -a1 -d1 -neth1         #启动命令(路径视实际情况而定)
  • IPv6上网设置

    1、网络——DHCP——高级设置中取消勾选“禁止解析 IPv6 DNS 记录; 网络——接口——LAN——IPv6 分配长度改为64

    2、网络——负载均衡——策略中备用成员是“不可达(拒绝)”而不是“默认(使用主路由表)”

    ​ 使用精简精简包,这步骤可以忽略,此时路由器Ping一下bt.byr.cn,如果可以ping通,继续下一步骤

    3、安装必要插件,使用eSir的包可以忽略该步骤

    opkg install ip6tables
    opkg install kmod-ipt-nat6

    4、配置Network文件

    修改/etc/config/network文件,添加以下字段,若已存在字段仅地址不同,可以不用修改。或者改成你喜欢的前缀。

    config globals 'globals'
    option ula_prefix 'eeee:eeee:eeee::/48' 

    →等效于
    在luci的web界面修改
    接口-全局网络选项-IPv6 ULA 前缀,前缀可以不和lz一样可以自定义

    5、配置DHCPv6

    修改/etc/config/dhcp文件,将config dhcp 'lan'那一栏修改为以下内容:

    config dhcp 'lan'
    option interface 'lan'
    option start '100'
    option limit '150'
    option leasetime '12h'
    option dhcpv6 'server'
    option ra 'server'
    option ra_management '1'
    option ra_default '1'

    等效于
    luci界面里打开
    接口-lan-下方 DHCP服务器-ipv6设置
    DHCPv6 服务 (DHCPv6-Service) 服务器模式
    路由通告服务 (Router Advertisement-Service) 服务器模式
    NDP 代理 (NDP-Proxy) 禁用
    DHCPv6 模式 (DHCPv6-Mode) 无状态的 + 有状态的
    总是通告默认路由(Always announce default Router) 勾选

    6、添加防火墙脚本

    修改/etc/firewall.user在文末添加
    假设WAN对应的接口为eth0.2,不是eth0.2的,自行修改成你的wan口设备名,添加以下内容:

    ip6tables -t nat -A POSTROUTING -o eth0.2 -j MASQUERADE

    等效于在luci界面
    网络-防火墙-自定义规则 添加这一行 保存应用

    7、配置网关

    在终端内使用

    ip -6 route | grep default

    查看当前IPv6默认路由
    结果显示如下
    default from (your ipv6) via (gateway) dev eth0.2 proto static metric 512

    其中(gateway)括号里的 就是你网络状态下的网关
    例如这里显示

    那么其中的
    fe80::224e:71ff:bbbb:cccc
    就是当前网络的默认网关,这一步至关重要
    我们需要将其添加到默认路由
    终端里输入命令

    route -A inet6 add default gw fe80::224e:71ff:bbbb:cccc dev eth0.2

    至此配置方面就好了
    接下来重启下服务使设置生效

    /etc/init.d/firewall restart
    /etc/init.d/network restart

    如果是使用其他低内核的固件做如上的操作,
    firewall那条命令的输出显示可能会提示什么ip6tables错误的 说明最开始安装的ip6tables不支持此固件的低内核 请换高版本内核使用此教程。network 重启会有短暂的断网 耐心等待网卡的DHCP。

    两条命令结束后 电脑仍然无法打开ipv6的话 请重启电脑的网卡 具体操作网络和共享中心-更改适配器设置,右击禁用网卡,再启用网卡。

    此时电脑就应该可以正常访问了。

    8、添加开机自动加入IPv6路由

    由于route -A inet6 add default gw 命令重启会失效所以我们需要建立一个脚本让路由器开机自动添加
    具体操作
    在/etc/hotplug.d/iface/目录下新建名字为 90-ipv6 的文件
    修改内容为

    #!/bin/sh
    [ "$ACTION" = ifup ] || exit 0
    route -A inet6 add default gw fe80::224e:71ff:bbbb:cccc dev eth0.2

    注意:记得修改成自己的网关
    然后给予可执行权限:

    chmod +x 90-ipv6

    至此开机启动也完成了。

IPv6设置部分转载自恩山论坛

http://www.right.com.cn/forum/thread-253712-1-1.html

最后修改:2022 年 10 月 30 日
如果觉得我的文章对你有用,请随意赞赏