接上篇BGP,这个时候已经拿下了自己ASN和IP,在RIPE中可以查询到,并且也添加了 Route6 对象,接下来就把自己的IP广播出去….
在广播之前,需要寻找一家能为你做广播的电信运营商….Emm至少在国内是不可能了,不过还可以选择云服务器,Vultr 提供了广播BGP的服务,还有 he.net 家的BGP隧道..
开通Vultr的BGP广播服务
直达链接:https://my.vultr.com/bgp/
由于下面的过程博主没都截图,所以…只好文字描述下了..
- 将 I have my own IP 和 I have my own ASN 修改为YES
- My ASN 填入ASN号码
- BGP Password 中填入自己想要的密码
- IP Prefixes 填入前缀
- LOA文件可参考下图 瞎编一个
- Routes 选择 Full Table
- 然后点击Setup
接下来注意ASN和IP Prefixes Whois留下的邮箱,Vultr会发送邮件到邮箱,然后让你选择同意和不同意.
接下来就是等待客服人工开通了
Vultr下广播的的配置
关于Linux的版本,博主选择的是CentOS 7
首先
-
安装bird6
yum install bird6 -y
-
停止服务
service bird6 stop
-
修改 /etc/bird6.conf的配置文件
-
修改配置中的 router id 改为自己的IPv4地址
- router id 198.51.100.1;
- 在文件的最后添加上
- protocol bgp vultr
- {
- local as 你的asn(开头不带as);
- source address 实例的ipv6;
- import none;
- export all;
- graceful restart on;
- multihop 2;
- neighbor 2001:19f0:ffff::1 as 64515; #这个是Vultr服务器的ip
- password "在申请广播的时候设置的bgp密码";
- }
- 寻找到protocol static
- protocol static
- {
- route [v6前缀] via [实例的IPv6];
- #route 2001:2333:2333::/48 via 4096:4096:4096:338:5400:01ff:fecf:596c;
- }
vultr要求广播的ipv6最小block为/48,ipv4为/24
- 找到protocol direct
- protocol direct
- {
- interface "dummy*";
- import all;
- }
- 保存配置
- 配置虚拟网卡以及ip地址
- ip link add dev dummy1 type dummy # 添加虚拟网卡
- ip link set dummy1 up
- ip addr add dev dummy1 [前缀内的任意一个地址] # 添加地址
- 启动bird6
service bird6 restart
- 查看状态 birdc6 show route/birdc6 show proto all
- 完
在 https://tools.ipip.net/traceroute.php?v=6 中可以看traceroute
he.net 的BGP隧道
直达链接: https://tunnelbroker.net/new_tunnel.php?type=bgp
该填写的还是类似上面Vultr中的内容
然后就是等待客服验证你的ASN和IP前缀
建议先在Vultr做好广播后再找 he.net 开通隧道,博主和 he.net 的客服为了验证我的ASN是我的ASN,我的前缀IRR验证了这些问题扯皮了很久..
至于服务器,如果是在中国大陆境内的服务器不建议选择香港,博主在深圳ping HK的服务器延迟比JP的还高..
等待客服批准,就可以开始配置了(
配置BGP隧道广播
总体来说,其实和上面的配置差不多,只不过要加一个建立隧道的过程(
当经过客服通过后,会看到下面的状态
状态变成 Available
点击 Example Configurations 复制一段 net-tools的配置到服务器,建立隧道
由于博主是在阿里云上的CentOS7,默认IPv6是关闭的,还需要开启下系统的IPv6,编辑/etc/sysctl.conf(需要Root权限)
- net.ipv6.conf.all.disable_ipv6 = 0
- net.ipv6.conf.default.disable_ipv6 = 0
- net.ipv6.conf.lo.disable_ipv6 = 0
保存,再运行 sysctl -p 的命令
参考:https://blog.csdn.net/ei__nino/article/details/71331717
类似
- ifconfig sit0 up
- ifconfig sit0 inet6 tunnel ::216.218.221.2
- ifconfig sit1 up
- ifconfig sit1 inet6 add 2001:470:17:10e::2/64
- route -A inet6 add ::/0 dev sit1
当隧道建立好后,sit1中可以看到建立隧道后自己的ip地址
尝试 curl ipv6.ip.sb,若能访问则有了公网IPv6
然后开始配置bird6,广播IP段
编辑/etc/bird6.conf 嘛,博主直接贴出自己的配置…
- protocol bgp he
- {
- local as 208191;
- source address 2001:470:17:10e::2;
- import none;
- export all;
- graceful restart on;
- multihop 2;
- neighbor 2001:470:17:10e::1 as 6939;
- }
source address修改为 he.net 分配给的客户端ip
neighbor 修改为 he.ne 给的服务器ip
然后就可以跳到上面Vultr protocol static 内容了(
之后就一样了,检查配置,配置好后就能ping通自己的地址了