离成功实现路由器刷OpenWrt、接入校园网差不多一年了。路由工作比较稳定,还是很满意的。

这次回来有个新发现:学校有原生ipv6支持,在win7和ubuntu下什么都不用设置,自动获取global unicast的ipv6地址。但是路由器内部局域网的客户机则没法享受这个待遇。趁春节放假,好好研究了一下怎样让客户机也拿到ipv6地址。

大概折腾了3天,前两天走了弯路、岔路。

网上的教程已经很多了,一搜一大把,比如这个、和这个,但是做起来比较复杂,静态ip可能好点,动态分配就有很多麻烦事。

而且要装ndppd、radvd、dhcpv6-server等新组件,结果发现路由器的空间不够用,只好自己跑去编译固件,去掉不用的组件以节省空间。现学的搭环境、编译下载花了1天的时间,在此问候一下G·F·W及其全家,编译失败多次以后我不得不把verbose打开,一个个找被墙掉的依赖包手动下载。

等合适的固件编译好之后发现这种方式不可行……我擦。不仅设置比较复杂,关键是原来能拿到ipv6地址、能ping通ipv6网站的路由wan口,现在连地址都拿不到了。

折腾2天时间之后发现了这个帖子,结果真的如帖子所说,不到5分钟搞定,而且所有设备都能动态的拿到ipv6地址,我拿手机试过,能ping通、访问ipv6.google.com,www.kame.net的小乌龟也是动的。

其关键就在6relayd这个组件,看看它的简介:

6relayd is a daemon for serving and relaying IPv6 management protocols to configure clients and downstream routers. 6relayd provides server services for RA, stateless and stateful DHCPv6, DHCPv6-PD and can be used to relay RA, DHCPv6 and NDP between routed (non-bridged) interfaces incase no delegated prefixes are provided by the upstream router.

简单的说就是这个组件多种功能集于一身,适用多种网络环境,而且配置超级简单,福音呐。

不过前两天也没白费,对ipv6的理解又多了一点点,对OpenWrt的make menuconfig设置、编译也比较熟练了,也弄懂了一部分组件的功能和依赖关系,比如kmod-ipv6是OpenWrt的ipv6支持核心包,dhcpv6的server和client有多个实现,menuconfig一些依赖关系的自动配置不完全,还需手动干预,受到一个帖子的启发,等等。

最后把此时路由器OpenWrt的组件列表备份一个,以后再编固件的时候参照下:

Installed packages

Package name Version
6relayd 2013-07-26-2ed520c500b0fbb484cfad5687eb39a0da43dcf7
base-files 117-r36088
busybox 1.19.4-6
dnsmasq 2.62-2
dropbear 2011.54-2
firewall 2-55.1
hotplug2 1.0-beta-4
iptables 1.4.10-4
iw 3.6-1
jshn 2013-01-29-0bc317aa4d9af44806c28ca286d79a8b5a92b2b8
kernel 3.3.8-1-d6597ebf6203328d3519ea3c3371a493
kmod-ath 3.3.8+2012-09-07-3
kmod-ath9k 3.3.8+2012-09-07-3
kmod-ath9k-common 3.3.8+2012-09-07-3
kmod-cfg80211 3.3.8+2012-09-07-3
kmod-crypto-aes 3.3.8-1
kmod-crypto-arc4 3.3.8-1
kmod-crypto-core 3.3.8-1
kmod-gpio-button-hotplug 3.3.8-1
kmod-ipt-conntrack 3.3.8-1
kmod-ipt-core 3.3.8-1
kmod-ipt-nat 3.3.8-1
kmod-ipt-nathelper 3.3.8-1
kmod-ipv6 3.3.8-1
kmod-leds-gpio 3.3.8-1
kmod-ledtrig-default-on 3.3.8-1
kmod-ledtrig-netdev 3.3.8-1
kmod-ledtrig-timer 3.3.8-1
kmod-ledtrig-usbdev 3.3.8-1
kmod-lib-crc-ccitt 3.3.8-1
kmod-mac80211 3.3.8+2012-09-07-3
kmod-nls-base 3.3.8-1
kmod-ppp 3.3.8-1
kmod-pppoe 3.3.8-1
kmod-pppox 3.3.8-1
kmod-usb-core 3.3.8-1
kmod-usb-ohci 3.3.8-1
kmod-usb2 3.3.8-1
kmod-wdt-ath79 3.3.8-1
libblobmsg-json 2013-01-29-0bc317aa4d9af44806c28ca286d79a8b5a92b2b8
libc 0.9.33.2-1
libgcc 4.6-linaro-1
libip4tc 1.4.10-4
libiwinfo 36
libiwinfo-lua 36
libjson 0.9-2
liblua 5.1.4-8
libnl-tiny 0.1-3
libubox 2013-01-29-0bc317aa4d9af44806c28ca286d79a8b5a92b2b8
libubus 2013-01-13-bf566871bd6a633e4504c60c6fc55b2a97305a50
libubus-lua 2013-01-13-bf566871bd6a633e4504c60c6fc55b2a97305a50
libuci 2013-01-04.1-1
libuci-lua 2013-01-04.1-1
libxtables 1.4.10-4
lua 5.1.4-8
luci 0.11.1-1
luci-app-firewall 0.11.1-1
luci-i18n-english 0.11.1-1
luci-lib-core 0.11.1-1
luci-lib-ipkg 0.11.1-1
luci-lib-nixio 0.11.1-1
luci-lib-sys 0.11.1-1
luci-lib-web 0.11.1-1
luci-mod-admin-core 0.11.1-1
luci-mod-admin-full 0.11.1-1
luci-proto-core 0.11.1-1
luci-proto-ppp 0.11.1-1
luci-sgi-cgi 0.11.1-1
luci-theme-base 0.11.1-1
luci-theme-openwrt 0.11.1-1
mtd 18.1
netifd 2013-01-29.2-4bb99d4eb462776336928392010b372236ac3c93
opkg 618-3
ppp 2.4.5-8
ppp-mod-pppoe 2.4.5-8
swconfig 10
uboot-envtools 2012.04.01-1
ubus 2013-01-13-bf566871bd6a633e4504c60c6fc55b2a97305a50
ubusd 2013-01-13-bf566871bd6a633e4504c60c6fc55b2a97305a50
uci 2013-01-04.1-1
uhttpd 2012-10-30-e57bf6d8bfa465a50eea2c30269acdfe751a46fd
wpad 20130302-1

OpenWrt镜像编译和ipv6支持的更多相关文章

  1. openwrt安装编译

    官网安装编译推荐: https://wiki.openwrt.org/doc/howto/buildroot.exigence https://wiki.openwrt.org/doc/howto/b ...

  2. net-snmp源码VS2013编译添加加密支持(OpenSSL)

    net-snmp源码VS2013编译添加加密支持(OpenSSL) snmp v3 协议使用了基于用户的安全模型,具有认证和加密两个模块. 认证使用的算法是一般的消息摘要算法,例如MD5/SHA等.这 ...

  3. net-snmp源码VS2013编译添加加密支持(OpenSSL)(在VS里配置编译OpenSSL)

    net-snmp源码VS2013编译添加加密支持(OpenSSL) snmp v3 协议使用了基于用户的安全模型,具有认证和加密两个模块. 认证使用的算法是一般的消息摘要算法,例如MD5/SHA等.这 ...

  4. QtCreator动态编译jsoncpp完美支持x86和arm平台

    如果是做嵌入式开发. 在Qt下支持JSon最好的办法,可能不是采用qjson这个库.QJson这个库的实例只提供了x86环境下的编译方法. Installing QJson-------------- ...

  5. CEF3编译添加mp4支持(对应CefSharp63.0.3),chromium63(3239),附release下载

    编译环境需求(3239版本) win7或更高,64位 vs2017 15.3.2+ 默认位置安装 不需要安装附带的win10sdk,sdk单独装 Windows 10.0.15063.468 SDK ...

  6. Win2019 IPV6 支持存在问题

    1. 昨天晚上尝试 使用IPV6进行Oracle与SQLserver 的链接测试.从晚上六点到晚上八点测试环境一直不通. 后来换了服务器之后发现立即就可以了. 经过简单确认 怀疑Win server ...

  7. openwrt(二) 配置openwrt及编译

    导航 1. 配置openwrt 2. 编译openwrt 3. 错误记录 1. 配置openwrt 在openwrt的根目录下,执行make menuconfig. 这个界面我也只是了解了这两个选项而 ...

  8. openwrt固件编译过程

    主Makefile分析 注:1)make -n可打印makefile执行的命令,而不执行. 2)可以在规则的命令中增加echo跟踪执行进度. 顶层目录的Makefile是openert的总Makefi ...

  9. 初玩OpenWRT之编译TP-Link WR841N V8固件

    0x00 安装依赖 安装git以下载OpenWrt源码.安装编译工具以进行交叉编译: sudo apt-get update sudo apt-get install build-essential ...

随机推荐

  1. volatile简介

    volatile简介 java语言提供了一种稍弱的内存同步机制,即volatile变量.用来确保将变量的更新操作通知到其它线程,保证了新值能立即同步到主内存,以及每次使用前立即从内存刷新.当变量声明为 ...

  2. html页面的head标签下

    head区是指首页html代码的<head>和</head>之间的内容.  必须加入的标签  1.公司版权注释  <!--- the site is designed b ...

  3. HDU5000 (DP + 规律)

    题意:举例子好说点,告诉你4个数字,8,6,4,2四个数字,组成一个四位数,如果两个数字分别是1111,2222,则2222会吧1111杀掉,就是组成的四位数不能每一位都小于或等于一个数,然后让你求出 ...

  4. 开发经验之状态机思想,分别使用了swift,OC,C,PHP语言实现

    这里设计一个简单的练习,使用状态机思想实现,分别使用了swift,OC,C,PHP语言实现 题目:1到10000遍历,开始-打印奇数-遇到7的倍数开始打印偶数--遇到10的倍数打印奇数   //部分结 ...

  5. Python培训12期-day2作业-购物车

    #!/usr/bin/env python import sys import os import getpass 商品={ '图书': { "<Puppet实战>": ...

  6. C语言处理xml文件的库

    读取和设置xml配置文件是最常用的操作,试用了几个C++的XML解析器,个人感觉TinyXML是使用起来最舒服的,因为它的API接口和Java的十分类似,面向对象性很好. TinyXML是一个开源的解 ...

  7. oracle字符函数

    UPPER(char) 小写转大写 LOWER(char) 大写转小写 INITCAP(char) 首字母转换 SUBSTR(char,[m[,n]]) 截取字符串函数 从源字符串char的m开始截取 ...

  8. JQUERY添加、删除元素、eq()方法;

    一.jQuery - 添加元素 1.append() - 在被选元素内部的结尾插入指定内容 2.prepend() - 在被选元素内部的开头插入指定内容 3.after() - 在被选元素之后插入内容 ...

  9. StatisticalOutlierRemoval源码

    源代码 * * Software License Agreement (BSD License) * * Point Cloud Library (PCL) - www.pointclouds.org ...

  10. iOS红马甲项目Bug总结(3)

    这里是一些小总结 1.使用图片缓存之后,新添加的图像一直不能显示 2.项目打包通过appliction loader上传成功了,可是itunes 上面的构建版本项,一直没显示出来 3.界面加载之后,t ...