OpenWrt镜像编译和ipv6支持
离成功实现路由器刷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支持的更多相关文章
- openwrt安装编译
官网安装编译推荐: https://wiki.openwrt.org/doc/howto/buildroot.exigence https://wiki.openwrt.org/doc/howto/b ...
- net-snmp源码VS2013编译添加加密支持(OpenSSL)
net-snmp源码VS2013编译添加加密支持(OpenSSL) snmp v3 协议使用了基于用户的安全模型,具有认证和加密两个模块. 认证使用的算法是一般的消息摘要算法,例如MD5/SHA等.这 ...
- net-snmp源码VS2013编译添加加密支持(OpenSSL)(在VS里配置编译OpenSSL)
net-snmp源码VS2013编译添加加密支持(OpenSSL) snmp v3 协议使用了基于用户的安全模型,具有认证和加密两个模块. 认证使用的算法是一般的消息摘要算法,例如MD5/SHA等.这 ...
- QtCreator动态编译jsoncpp完美支持x86和arm平台
如果是做嵌入式开发. 在Qt下支持JSon最好的办法,可能不是采用qjson这个库.QJson这个库的实例只提供了x86环境下的编译方法. Installing QJson-------------- ...
- CEF3编译添加mp4支持(对应CefSharp63.0.3),chromium63(3239),附release下载
编译环境需求(3239版本) win7或更高,64位 vs2017 15.3.2+ 默认位置安装 不需要安装附带的win10sdk,sdk单独装 Windows 10.0.15063.468 SDK ...
- Win2019 IPV6 支持存在问题
1. 昨天晚上尝试 使用IPV6进行Oracle与SQLserver 的链接测试.从晚上六点到晚上八点测试环境一直不通. 后来换了服务器之后发现立即就可以了. 经过简单确认 怀疑Win server ...
- openwrt(二) 配置openwrt及编译
导航 1. 配置openwrt 2. 编译openwrt 3. 错误记录 1. 配置openwrt 在openwrt的根目录下,执行make menuconfig. 这个界面我也只是了解了这两个选项而 ...
- openwrt固件编译过程
主Makefile分析 注:1)make -n可打印makefile执行的命令,而不执行. 2)可以在规则的命令中增加echo跟踪执行进度. 顶层目录的Makefile是openert的总Makefi ...
- 初玩OpenWRT之编译TP-Link WR841N V8固件
0x00 安装依赖 安装git以下载OpenWrt源码.安装编译工具以进行交叉编译: sudo apt-get update sudo apt-get install build-essential ...
随机推荐
- Java中interface和abstract class的区别和联系
interface: interface类似于class,但是只包含函数(只规定参数.函数名.返回类型,不规定函数体).目的是用来建立类和类之间的一种“协议”.一个类可以实现多种接口,来模拟多重继承. ...
- ASP.NET关于WebPages的一点总结
相比于早期的ASP,WebPage貌似只是多了一些Razor语法可以直接调用服务器代码,其他的内容HTML.样式CSS以及脚本JavaScript基本都是一样的处理方式 只是说内容HTML里面加入了更 ...
- HTML5新增video标签及对应属性、API详解
知识说明: 比不上很牛的前端开发人员,但自始至终明白“万丈高楼平地起”,基础最重要,初学HTML5,稳固基础第一步,把最基本的整理下来,留下自己学习的痕迹.HTML5新增的video标签,将其属性以及 ...
- JVM-程序编译与代码早期(编译期)优化
早期(编译期)优化 一.Javac编译器 1.Javac的源代码与调试 Javac的源代码放在JDK_SRC_HOME/langtools/src/shares/classes/com/sun/too ...
- ACM 杂题,思路题 整理
UVa 11572 - Unique Snowflakes 问一个数组中,无重复数字的最长子串长度是多少. 用map维护某数字上次出现的位置.另外用变量last表示上次出现数字重复的位置. 如果出现重 ...
- JS form表单图片上传
// 点击file 类型的input 触发的方法 function changesProvider(){ // fileProvider -> input中的name属性值 var f = do ...
- Nested List Weight Sum -- LeetCode 339
Given a nested list of integers, return the sum of all integers in the list weighted by their depth. ...
- Warning: Attempt to dismiss from view controller <UIViewController: 0x17d71c10> while a presentation or dismiss is in progress!
昨天 调试程序 已经快要上线了 突然有个BUG 找了半天 才找到是因为这个警告 但是 解决这个警告又花了一天的时间 试了各种消除控制器的方法 都不可用 其中 并且 有这个bug 手机真机测试完全没问 ...
- IOS开发-当遇到tableView整体上移时的解决方案
方案一在使用了navigationController后,当界面进行跳转往返后,时而会出现tableView上移的情况,通常会自动上移64个像素,那么这种情况,我们可以关闭tableView的自动适配 ...
- 设置Android studio黑色主题
设置: 如上图,点击[Theme]下拉选项,选中[Darcula]主题,点击[Apply]应用修改,弹出重启Android Studio生效修改.如图: