MENU

IP广播: 在不借助你的ISP进行任何操作的情况下,广播(组播)你的IPv6

虽然你国说正在普及ipv6,但是我认为距离普及完成还有几年(或许需要等到ipv8出现的时候ww),那么问题来了,在完全不借助你的ISP的情况下广播你IPv6是可能的咩,答案是可能的.

你国现状

通过某论坛的坛友们讨论得知你国现状

  • 只有部分地区有ipv6
  • 分配的ipv6无法使用
  • ipv6不是固定的
  • 无法修改rdns
  • 得到的ipv6为/64以上,导致无法再为下级路由分配
  • 访问任何ipv6站点需要先环球旅行2圈左右

其它的几个实现方法

咨询你的ISP,询问他们是否可以广播你的ipv6

根据你国国情来看这个方法并不适合.

使用tunnelbroker给我们提供的普通隧道(Regular Tunnel)

这个方法目前被大多数人使用,但是他有以下缺点

  • 获得的ipv6来自美国并且标注为数据中心使用.
  • 无法使用一些对地理位置审查严格的服务,比如netflix
  • 经常会因为无效的地理位置触发如google的访问验证

使用服务器创建自己的6in4服务器

很多vps/独立服务器运营商会为我们提供/64甚至/48的ipv6,我们可以创建一个像tunnelbroker那样的6in4服务器
这个方法我很久之前就想实现,但是由于水平的原因我从未成功过,而且它的缺点和上面的一样.

和ISP协商并从他们那里购买专线

这是一个很好的解决办法,只要你愿意接受每月支付接近5位数的账单的话,我建议你使用这种方法.

选择的解决方法

在经过摸索上述方法时,我找到了第四种方法,我注意到tunnelbroker里存在一个BGP隧道(BGP Tunnel),打开这个页面时发现需要填写ASN,IP和自己的ip block

一开始我并不知道这是做什么的,经过之前尝试广播ip之后我渐渐的明白了它的用处,于是我尝试使用了它.

必备条件

在使用BGP隧道时你需要满足以下条件

  • ISP为你分配一个公网IPv4,它可以是动态的
  • 你拥有ASN和一个至少为/48的ipv6 block

如果你的ISP没有为你分配ipv4,你可以尝试向客服索要,你可说你正在使用的摄像头是很旧的型号,要想远程访问必须要使用公网ip来远程访问它,如果这时候你仍然无法得到ipv4你也可以尝试寻找ISP在当地的维护人员,请他们吃饭尝试从他们那里得到公网ipv4,如果这个时候他们仍然不能为你分配公网ipv4,你可以尝试让他们为你创建41的端口映射,如果无法做到这两种方法其中的一种,你将无法继续.

ASN和IPv6可以在很多渠道获得,比如hostus和ipv6.im

实施步骤

首先我们到tunnelbroker创建一个BGP隧道,选择离你最近的pop节点,填写你的asn和ISP分配给你的ip还有你需要使用(广播)的IP block

然后你将收到来自ipv6@he.net的邮件,邮件中会让你提交loa(关于loa请查看前面的文章)以便验证,提交之后大约在24小时内就会审核通过,这时你就可以正常使用你的隧道了.

然后我们需要像创建普通隧道那样创建一个6to4隧道

auto he-ipv6
iface he-ipv6 inet6 v4tunnel
        address 2001:470:233:233::2
        netmask 64
        endpoint 8.8.4.4
        local 8.8.8.8
        ttl 255
        gateway 2001:470:233:233::1

当建立了普通隧道之后,剩余的操作就和普通的ip广播设置一样了,具体操作请看前两篇文章,这里只贴出bird6的不同点

protocol bgp vultr
{
        local as 209233;
        source address 2001:470:233:233::2;
        import none;
        export all;
        graceful restart on;
        multihop 2;
        neighbor 2001:470:233:233::1 as 6939;
}

不同点的解释

  • 209233请替换成你的asn号码
  • 2001:470:233:233::2是bgp隧道为你分配的client ip
  • 2001:470:233:233::1是bgp隧道为你分配的server ip,6939为he的asn号码

另外bird内不需要password字段,如果填写了这个字段将无法正常广播

然后我们来验证是否已经建立连接

root@website:~# birdc6 show proto all he
BIRD 1.6.3 ready.
name     proto    table    state  since       info
he       BGP      master   up     09:29:01    Established
  Preference:     100
  Input filter:   REJECT
  Output filter:  ACCEPT
  Routes:         0 imported, 2 exported, 0 preferred
  Route change stats:     received   rejected   filtered    ignored   accepted
    Import updates:          60702          0      60702          0          0
    Import withdraws:          274          0        ---      60976          0
    Export updates:              3          0          0        ---          3
    Export withdraws:            1        ---        ---        ---          1
  BGP state:          Established
    Neighbor address: 2001:470:233:233::1
    Neighbor AS:      6939
    Neighbor ID:      8.8.4.4
    Neighbor caps:    refresh AS4
    Session:          external multihop AS4
    Source address:   2001:470:233:233::2
    Hold timer:       146/180
    Keepalive timer:  2/60

BGP state:的值为Established时则表示可以正常进行广播了,广播方法请参考前面2篇文章

最后编辑于: 2019 年 01 月 20 日
添加新评论

已有 3 条评论
  1. 关键是你在哪儿申请的AS?

    1. @boboripe的有netsh和MM

  2. 拿文章改了改忘了说一声了,不好意思

996.icu 996.icu