在Bird 1.6.8中,我成功宣布了 IPv4/24
子网,并且我主要使用根据RFC 5735 的示例 IP 地址/子网:
root@tunnel0:~# birdc show proto all vultr
BIRD 1.6.8 ready.
name proto table state since info
vultr BGP master up 2024-01-18 Established
我现在想使用WireGuard 在我家的本地服务器上使用203.0.113.32/27
其中的一部分203.0.113.0/24
- 本地服务器是多个 KVM 来宾的主机(
libvirt
在 Debian 12 Bookworm 上)。 - 主机本身以及访客都需要一个公共 IPv4 地址。
- 如果可能的话,我想使用基于策略的路由而不是 NAT。
- 我确实使用了
nftables
而不是iptables
因为后者变得越来越不赞成。
我能够在两台服务器之间设置 WireGuard 连接,但我不知道如何配置公共 IPv4 子网,以便我可以使用它而不是私有子网:
- WireGuard 服务器:
[Interface] Address = 10.17.0.1/24 SaveConfig = true ListenPort = 51820 PrivateKey = ... [Peer] PublicKey = ... AllowedIPs = 10.17.0.0/24
- WireGuard 客户端:(= VM 的本地服务器/主机)
# Client [Interface] PrivateKey = ... Address = 10.17.0.128/24 # Server [Peer] PublicKey = ... AllowedIPs = 10.17.0.0/24 PersistentKeepalive = 25 Endpoint = 198.51.100.77:51820
- 鸟:
router id 198.51.100.77; protocol bgp vultr { # substitute with your AS or Vultr's private AS local as 123456; source address 198.51.100.77; import none; export all; graceful restart on; multihop 2; neighbor 169.254.169.254 as 64515; password "..."; } protocol static { route 203.0.113.0/24 via 198.51.100.77; } protocol device { scan time 5; }