V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
Beckham
V2EX  ›  Linux

想请教一个 sysctl 关于 ipv6 设置的问题

  •  
  •   Beckham · Apr 6, 2016 · 6521 views
    This topic created in 3679 days ago, the information mentioned may be changed or developed.
    最近在折腾路由器的 ipv6 支持问题,最后通过刷 pandorabox 固件使用 6relayd 固件使得 pc 端可以使用 ipv6

    但这个版本固件有个重大缺陷,路由器端无法使用 ping6 ,会提示 ping6 sendto : operation not permitted

    经测试关闭 sysctl 后可以 ping ,但是这样 6relayd 也失效了,具体原因未明。

    想请问应该怎样修改使得 sysctl 支持 ipv6 ?常规 forwarding=1 语句和 disable_ipv6=0 的语句都已经添加,是否还有别的设置如 ip6tables 设置错误(卸载了 ip6tables 仍无效)

    其他固件能够直接 ping6 的固件为 openwrt 15.05 ,插件包已经没有 6relayd 所以无法安装,强行解压安装会在系统日志无限提示 6relayd permission denied 。能否有办法将 6relayd 的源码重新打包成为 15.05 支持的插件?

    还望各位高手赐教,不胜感激!
    Supplement 1  ·  Apr 6, 2016
    谢谢大家的热心回答。终于全部修复,在启动脚本中添加 ip -6 r from:: via (ipv6 网关)dev eth0.2 解决路由器不能 Ping v6 的问题

    6relayd ( pandorabox r2075 版)解决地址分发问题,现在客户端和无线连接地址都可以获得 ipv6 地址。

    全贴终结!
    15 replies    2016-04-06 20:52:28 +08:00
    xuboying
        1
    xuboying  
       Apr 6, 2016 via Android
    这类问题上社区啊,说不定有人重编译了源码已经
    tempdban
        2
    tempdban  
       Apr 6, 2016 via Android
    啥叫关闭 sysctl ?
    /etx/sysctl.conf
    贴一下
    raysonx
        3
    raysonx  
       Apr 6, 2016 via Android
    另外贴一下下面几条命令的结果:
    ip6tables -L -n
    ip -6 a
    ip -6 r
    raysonx
        4
    raysonx  
       Apr 6, 2016 via Android
    补充: openwrt CC 中已经没有了 6relayd ,取而代之的是 odhcpd ,效果一样
    realpg
        5
    realpg  
    PRO
       Apr 6, 2016
    这论坛都是有一定折腾能力的,搞啥 pandorabox 啊
    自己编译 openwrt 玩儿呗
    benwwchen
        6
    benwwchen  
       Apr 6, 2016 via iPhone
    @raysonx odhcpd 貌似一段时间后会失效,然后重启可能好一下,但是很快就又会失效……不知道后来有没有修复…
    Beckham
        7
    Beckham  
    OP
       Apr 6, 2016
    @xuboying
    @tempdban
    @raysonx
    @raysonx
    @realpg

    感谢回复

    刚才在 pandorabox 的 bug 提交网页看到了同样的问题,是 ip -6 r 的结果少了一行 ip -6 r add default from :: via fe80::eda:41ff:fe40:afe1(v6 网关) dev eth0.2 proto static

    命令行添加后路由器也获得了地址。但是这个设定重启后会重置,要怎么加进脚本?我看原问题的作者最后一个回答没有看懂。

    链接附上 http://bug.pandorabox.com.cn/issues/186
    raysonx
        8
    raysonx  
       Apr 6, 2016
    @benwwchen 最早 BB 自带的 odhcpd 是有这个问题,但我记得后来修了,现在都 CC 15.05.1 了。实在不行只能自己编译 6relayd 了。
    Beckham
        9
    Beckham  
    OP
       Apr 6, 2016
    @raysonx 对的,之前我也看到这个消息。但是在 pandorabox 下我安装了 6relayd 直接可以使客户端获得 v6 地址,而 openwrt 刷完后客户端无法获取地址,是不是要设置什么?
    jasontse
        10
    jasontse  
       Apr 6, 2016 via iPad
    @Beckham
    贴一下你所有接口和 ifconfig 的图吧
    raysonx
        11
    raysonx  
       Apr 6, 2016
    @Beckham pandorabox 下的 ip -6 r 路由表贴出来让大家看一下,我不建议直接手加路由表,灵活度太低了,往往重启接口就会失效。
    关于 OpenWRT 的 odhcpd 配置,见 https://wiki.openwrt.org/doc/uci/network6#router_advertisement_dhcpv6
    Beckham
        12
    Beckham  
    OP
       Apr 6, 2016
    @jasontse 问题已经接近解决, http://bug.pandorabox.com.cn/issues/186 ,就是在这个问题里面的最后一步把 from:: 加至脚本没有看懂。实测 ip -6 r add default from :: via fe80::eda:41ff:fe40:afe1(v6 网关) dev eth0.2 可行。但是重启仍要重新输入。
    Beckham
        13
    Beckham  
    OP
       Apr 6, 2016
    @raysonx /etc$ ip -6 r
    #default from :: via fe80::212:f2ff:fe3f:5900 dev eth0.2 metric 1024 #此行为后添加
    default from 2001:da8:a800:2112::/64 via fe80::212:f2ff:fe3f:5900 dev eth0.2 proto static metric 512
    2001:da8:a800:2112::/64 dev eth0.2 proto static metric 256
    2001:da8:a800:2112::/64 dev br-lan proto kernel metric 256 expires 2147459sec
    fd58:ef8b:277::/64 dev eth0.2 proto kernel metric 256
    fd58:ef8b:277::/64 dev br-lan proto kernel metric 256
    fd58:ef8b:277::/64 dev eth0.2 proto static metric 1024
    fd58:ef8b:277:10::/64 dev br-lan proto static metric 1024
    fd58:ef8b:277:10::/60 dev br-lan proto kernel metric 256
    unreachable fd58:ef8b:277::/48 dev lo proto static metric 2147483647 error -128
    fe80::/64 dev eth0 proto kernel metric 256
    fe80::/64 dev br-lan proto kernel metric 256
    fe80::/64 dev eth0.2 proto kernel metric 256
    fe80::/64 dev ra0 proto kernel metric 256

    对的,手动加确实是不现实,我看问题的作者就是在 /lib/netifd/dhcpv6.script 中添加了 from::脚本。不知道要如何实现
    jasontse
        14
    jasontse  
       Apr 6, 2016 via iPad
    根据官方源码中 https://github.com/openwrt/openwrt/blob/e00e185936012dbf5b12d8c5e2fc33e374e06e11/package/network/ipv6/odhcp6c/files/dhcpv6.sh#L81 ,和 https://github.com/openwrt/openwrt/blob/e00e185936012dbf5b12d8c5e2fc33e374e06e11/package/network/ipv6/odhcp6c/files/dhcpv6.script 文件 88 行及 107 行。尝试这样修正配置:

    # uci set network.wan6.sourcefilter=0
    # uci commit network
    # ifup wan6

    那个 issues 无法回复一直 500 。。。。
    Beckham
        15
    Beckham  
    OP
       Apr 6, 2016
    @jasontse 感谢!
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1100 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 17:42 · PVG 01:42 · LAX 10:42 · JFK 13:42
    ♥ Do have faith in what you're doing.