前言
今天我拿阿里云送的300块买了一台轻量。于是我有了一台有公网ip的云服务器。正好DN11群里最近打算开始赶人没组网的闲人了(而且我不是特邀嘉宾(b溃了555))。那正好可以让这个服务器有用武之地。(之后或许会考虑把博客也迁移上去(?但也可能因为嫌域名备案啥的麻烦懒得搞。。)
但身为二进制菜鸡的我在web/network这一块完全是一张白纸。所以简单记录一下,防止之后自己忘掉。。
Intro
来自dn11.top
DN11全称为“11号去中心化网络”,围绕杭电11楼建设。也接纳来自其他宿舍楼的同志。
目前主要采用wireguard接入,后续应该会开放IKEv2等协议的接入,方便其他同学接入。
按照愿景,每个寝室都会分配到172.16.x.0/24这样的一个网段,因此,DN11目前设计上最多接纳255个主要节点接入。
asn、网段选择
根据现有ip和asn选择自己喜欢的就可以。
我的asn是4220086666
ip:172.16.10.0/24
Wireguard
一般配置如下:
1 2 3 4 5 6 7 8 9 10
| [Interface] PrivateKey = <PrivateKey> ListenPort = <Port> PostUp = /sbin/ip addr add dev %i <my tunnel IP> peer <another tunnel IP> Table = off
[Peer] Endpoint = <EndPoint IP> PublicKey = <Public Key> AllowedIPs = 0.0.0.0/0
|
Bird
配置如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
| log syslog all; debug protocols all;
# 可以采用隧道地址,也可以采用路由所在的IP,在自己的网段内且不重复即可 router id 172.16.10.254;
# 分表,给后期的其他配置留一点回旋的余地 ipv4 table BGP_table;
protocol device{
}
# 从 master4 导出所有路由表到 kernel protocol kernel{ ipv4 { export all; import none; }; }
# 宣告 172.16.10.0/24 段 protocol static { ipv4 { table BGP_table; import all; export none; };
# 只是为了让BGP的路由表里出现这条路由,不要担心 reject # 这个动作其实无所谓,reject 这个动作并不会被发到其他 AS # 后续将在导出到 master4 的时候删除这条路由,本地也不会有这一条 # 请修改为你自己要宣告的段 route 172.16.10.0/24 reject; }
# 定义BGP模板 template bgp BGP_peers { # 修改为隧道地址和你的ASN local 172.16.10.254 as 4220086666;
ipv4 { table BGP_table; import all; export filter { if source ~ [RTS_STATIC, RTS_BGP] then accept; reject; }; }; } protocol bgp JBNRZ from BGP_peers { # 对端隧道地址%接口 as ASN }
# 从 BGP_table 导入路由到 master4 protocol pipe { table master4; peer table BGP_table; import filter { # 过滤 protocol static 添加的 reject if source = RTS_STATIC then reject; accept; }; export none; }
|
up
用BS魔改的启动脚本https://github.com/BaiMeow/wg-quick-op
1 2 3 4 5
| ./wg-quick-op up <interface>
bird -c bird.conf
birdc s p
|
status
status.dn11.top
主机
主机和服务器之间的连接我用的也是wireguard,但是听说是有风险的。。
配置就和正常的一样写,allowedips加上peer群友的网段
然后在服务器上
1 2 3
| iptables -A FORWARD -j ACCEPT
echo "1" > /proc/sys/net/ipv4/ip_forward
|
如果您喜欢此博客或发现它对您有用,则欢迎对此发表评论。 也欢迎您共享此博客,以便更多人可以参与。 如果博客中使用的图像侵犯了您的版权,请与作者联系以将其删除。 谢谢 !