配置BGP Peer
首先需要将自己申请到的AS和IP地址绑定到自己的服务器上,并与其他AS建立BGP Peer。
绑定AS和IP
该操作取决于服务器类型,此处以Vultr为例。
1. 提交申请
按上图中示例,填写表单,包括 ASN 、BGP密码(避免弱口令,后面配置要用)、IP段,上传 LOA 文件,选择 Full Table,然后点击 Request BGP Setup按钮即可。
<!--more-->
2. 验证WHOIS
Vultr之后会抓取WHOIS中预留的邮箱,并让你选择一个。之后他会发邮件过去让你进行确认,点击确认即可。之后便会有Vultr的工作人员为你配置,配置完成后你的VPS中会多出来一个选项卡BGP。
配置BGP
本文使用bird6来进行BGP的配置。
1. 下载
add-apt-repository ppa:cz.nic-labs/bird apt-get update apt-get install bird -y
2. 配置
# 修改/etc/bird/bird6.conf文件 router id x.x.x.x # 服务器的IPv4地址 protocol static { route 2001:xxxx:xxxx::/48 via 2002:yyyy:yyyy:yyyy:yyyy:yyyy:yyyy:yyyy; } # 2001:xxxx:xxxx::/48 为自己需要向外广播的IP段 # 2002:yyyy:yyyy:yyyy:yyyy:yyyy:yyyy:yyyy 为自己IPS的IPv6地址 protocol direct { interface "dummy*"; import all; } define BOGON_ASNS = [ 0, # RFC 7607 23456, # RFC 4893 AS_TRANS 64496..64511, # RFC 5398 and documentation/example ASNs 64512..65534, # RFC 6996 Private ASNs 65535, # RFC 7300 Last 16 bit ASN 65536..65551, # RFC 5398 and documentation/example ASNs 65552..131071, # RFC IANA reserved ASNs 4200000000..4294967294, # RFC 6996 Private ASNs 4294967295 # RFC 7300 Last 32 bit ASN ]; filter sample_import int set reject_private_asn; { if bgp_path ~ BOGON_ASNS then reject; accept; } protocol bgp vultr { local as 11111 # ASN; source address 2000::0 # 实例的ipv6; import filter sample_import; export all; graceful restart on; multihop 2; neighbor 2001:19f0:ffff::1 as 64515 # vultr提供的BGP服务器; password "paaswd" # 申请时填写的bgp密码; }
3. 重启bird6
service bird6 restart birdc6 show proto all vultr # 如果 BGP state: Established 就配置成功了
配置 IP
ip link add dev dummy1 type dummy ip link set dummy1 up ip addr add dev dummy1 2001:xxxx:xxxx::1/128
配置OpenVPN
本教程基于 https://github.com/Nyr/openvpn-install 仓库编写。
1. 安装
wget <https://git.io/vpn> -O openvpn-install.sh && bash openvpn-install.sh # 后续按照默认参数即可
2. 配置
# 修改/etc/openvpn/sever/server.conf server-ipv6 2001:xxxx:xxxx:xxxx::/64 #补充一行,此处填写需要分配的IP段
3. 客户端配置
回到执行安装的目录下,会有一个
client.ovpn
文件,将其导入到手机的vpn客户端即可连接。连接后,应该已经获取到了服务器分配的IPv6地址,之后即可使用该地址上网。4. 客户端管理
如果想对已生成的客户端进行管理,可直接执行安装时的脚本进行选择。