haima  Lv1
发布文章:6篇
发表评论:2条

[CentOS7]使用Bird广播IPv6地址

应一位朋友的要求写下此文(详情请点这

本文以CentOS7,Bird为例进行(如果你使用其他发行版,关于软件包管理的命令和配置文件路径(可能)需要改变,比如你使用Ubuntu时应为:apt-get install bird)(在Ubuntu下安装bird会自动安装bird6)

需要准备

一个支持BGP的主机商(和一个他们的小鸡(注意,必须有IPv4地址才可以),这项视主机商的要求不同而不同,本文以Vultr为例

一段IPv6地址(可以广播的最小的IP段是/48)

一个ASN(如果你和我一样使用Vultr也可以没有,Vultr会给你分配一个私有AS)

 

开始配置:

首先安装Bird。

yum install bird bird6

 

安装好以后我们编辑配置文件。

路径在: /etc/bird6.conf

 

推荐删除掉文件内所有的示例内容,不然到时候乱七八糟的你维护起来比较头疼。

下面直接是文件内容

router id [你实例的IPv4地址]
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;
    password "在申请广播的时候设置的bgp密码";
}
然后在protocol device那行的上面添加如下配置
protocol static
{
    route  你要广播的IP段 via 你实例的IPv6地址;
}
然后保存配置文件重启 bird6(我们只广播了 ipv6 所以只需要启动 bird6 即可)
systemctl restart bird6
到这里广播就算完成了, 下面我们要为当前实例创建一个虚拟网卡并设置一个 ip
ip link add dev dummy1 type dummy ip link set dummy1 up ip addr add dev dummy1 2001:2333:2333::1/128

然后在 brid6.conf 中加入如下配置

protocol direct
{
    interface "dummy*";
    import all;
}

然后再次重启或直接重载bird6

systemctl reload bird6

这样 bird 将查询所有 dummy 开头的网卡的 ip 并宣告这些 ip

然后可以通过

birdc6 show route
查看广播状况
也可以通过上面为虚拟网卡添加的 ipv6 链接实例了

现在你是不是发现好像少了什么?对,之前说的protocol device 在哪?

那么现在我告诉你,你其实还得在/etc/bird6.conf里加一行

protocol device {
scan time 15;
}

注意,这行要加在protocol bgp vultr 这一段前面。

这个时候你需要再次重启或重载你的bird6,这样就彻底搞好了~

(注意:你如果和我一样选择Vultr,你需要发工单让他们为你开通BGP。官方教程在这里

上一篇:
:下一篇
注意:留言时请遵守您当地的法律法规与风俗

5 条评论

gravatar

  1. haima Lv1
    小白
    [博主]

    签到成功!签到时间:上午6:06:11每日打卡,生活更精彩哦~

  2. haima Lv1
    小白
    [博主]

    签到成功!签到时间:上午8:51:19每日打卡,生活更精彩哦~

  3. 惶心 Lv1
    小白

    看上去步骤似乎很简单

    回复惶心
    1. haima Lv1
      小白
      [博主]

      @惶心 对,但是互联网不是试验场,还是不要瞎鸡儿搞233

  4. haima Lv1
    小白
    [博主]

    签到成功!签到时间:上午2:07:26每日打卡,生活更精彩哦~

当前页面评论被关闭,原因如下: