TearSnow Fan


OpenWrt 路由器配置 IPv6穿透

博主在“那些年我折腾过的无线路由器”一文中曾推荐过几款官方固件支持IPv6穿透(IPv6 Pass-Throughout,也译作“IPv6通透”)的无线路由器。该功能在原生IPv6(Native IPv6)+自动分配IPv6地址的网络环境下(很多高校的校园网都具备),可以使局域网中的每个节点都申请到一个IPv6地址。也即路由器对IPv4起NAT作用,对IPv6只相当于交换机。这种配置对具有上述网络环境的童鞋无疑是最完美的选择。

感谢技术达人asxzy在其个人网站龙虾的书房以及OpenWrt中文论坛发表的帖子,为使用OpenWrt路由器配置IPv6穿透功能指明了方法。原则上,只要路由器支持刷OpenWrt固件,都可以按照如下方法配置IPv6穿透功能。

目的:构造 IPv4路由(NAT)+ IPv6交换机

思路:将 WAN 接口 + LAN 接口(包括WLAN)桥接,屏蔽掉网桥上的IPv4数据包,让IPv6的数据包利用该网桥从路由器中直接通过。

要求:路由器已刷OpenWrt固件,下面的方法一需要ebtables和6scripts软件包,方法二需要ebtables和birdge-utils软件包。上述软件包在OpenWrt的Backfire版本中不提供,但在Trunk版本中貌似都提供,经博主测试,在Attitude Adjustment (12.09 final)中也提供。

方法一:利用6scripts实现(推荐)

首先SSH登陆到无线路由器的OpenWrt系统(别告诉我这个你也不会啊……我推荐用SecureCRT

首先安装软件包:

opkg update
opkg install ebtables 6scripts

然后用命令 brctl show 查看下你的网桥设备名,一般是br-lan。

编辑配置文件/etc/config/6bridge

vi /etc/config/6bridge

改配置文件中的bripv6修改为你的网桥设备名(别告诉我你不会用VI啊,请问度娘去吧……)

以下两行命令,第一行运行脚本,第二行设置开机自启动。

/etc/init.d/6bridge start
/etc/init.d/6bridge enable

方法二:手工配置(原理)

本方法更偏原理性,事实上方法一中的6scripts软件包也是使用本方法实现IPv6的。

先约定接口名称如下:

WAN口名称:eth1

LAN口名称:eth0

无线接口名称:wlan0、wlan1(某些路由器会有2.4G和5G两个频段,所以会有两个无线接口)

然后安装软件包:ebtables、birdge-utils

brctl addbr br-lan
ifconfig br-lan up
brctl addif br-lan eth0
brctl addif br-lan eth1
brctl addif br-lan wlan0
brctl addif br-lan wlan1
ebtables -t broute -A BROUTING -p ! ipv6 -j DROP

需要注意的问题:

1、根据原作者asxzy的描述,“在某些环境下,这种方法还是有缺陷的。比如需要IPv4通过交换机验证的环境中,由于客户端没有通过联网验证,上端路由器不会相应来自客户端的任何请求,故本方案只是用于IPv6无需认证的网络环境使用。”

2、博主在水星/Mercury MW300R(硬件同TP-Link MR3420、TP-Link 841 v7)上试验结果为:在有线LAN口上测试IPv6正常,使用无线网络时仍然只能使用IPv4,原因不明,求高人指点。

附:原生支持IPv6穿透的路由器列表

如果不想折腾,当然也可以使用官方原生固件支持IPv6穿透的无线路由器,博主亲测支持IPv6穿透的路由器有:

  • Buffalo WCR-GN
  • Buffalo WHR-G300N-V2
  • Buffalo WCR-G300-CH
  • Netgear NWR2000
  • Netgear WNDR3700
  • Netgear WNDRMAC

看过本文后你应该明白,实现该功能并不需要特殊硬件的支持。因此,Buffalo和网件/Netgear使用类似系列固件的路由器都应支持IPv6穿透。

Buffalo路由器的设置界面如下:

如有其它品牌和,请回帖补充,谢谢支持。

参考资料:

[1] 龍蝦的书房——asxzy的小天地:可搜索IPv6相关文章(共2篇)

[2] OpenWrt中文论坛:openwrt下单一ipv6地址做网关(附mentohust、njitclient)

本文固定链接: http://blog.xieyc.com/configure-ipv6-throughout-in-openwrt/ | 小谢的小站

该日志由 xieyc 于2013年06月26日发表在 折腾 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: OpenWrt 路由器配置 IPv6穿透 | 小谢的小站
关键字: , , ,

目前共有 3 条留言 【 访客:2 条, 博主:1 条 】 访客以 2:1 暂时领先博主!

  1. 板凳
    lonelykid:

    你好,我们学校原生ipv6不能使用,我想在Openwrt后使用isatap,请问应该怎么做呢?我看到网上有教程说可以直接netsh制定地址即可,我没成功,于是刷了openwrt…

    2013-09-04 01:53
  2. 沙发
    AK88:

    楼主你好,请问有没有原生支持IPv6穿透并且功耗较低的路由器呢?

    2016-12-22 18:47
    • @AK88
      文章最后有个列表,原生支持IPv6通透的路由器。功耗我没有太在意,你可以查询这些路由器的技术参数,就可以找到功耗低的了。

      2017-07-21 01:46

发表评论

:wink: :neutral: :mad: :twisted: :smile: :shock: :sad: :roll: :oops: :eek: :mrgreen: :lol: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:

快捷键:Ctrl+Enter