我有 3 个节点 - 1 个服务器和两个额外的客户端。
我可以从两个客户端成功 ping 服务器端点,并且可以从服务器 ping 这两个客户端。但是两个客户端无法成功互相 ping 通。
我不太确定是否正确发送了端点 - 我找不到关于应该设置的内容的太多信息。
在服务器上我看到调试错误日志:
[ 2848.826167] wireguard: wg0: Invalid MAC of handshake, dropping packet from 90.218.41.186:1024
我可能哪里出错了?
peers = [
# For a client configuration, one peer entry for the server will suffice.
# server
{
publicKey = "***************";
allowedIPs = [ "10.100.0.1"];
endpoint = "**Server_IP_redacted**:51820";
persistentKeepalive = 25;
}
# pineapple
{
publicKey = "*************";
allowedIPs = [ "10.100.0.2" ];
endpoint = "**Server_IP_redacted**:51820";
persistentKeepalive = 25;
}
];
答案1
在为服务器定义单个对等点并设置适当的子网(而不是allowedIps
显式 IP)后,它开始正常工作。
peers = [
# server
{
publicKey = "**********";
allowedIPs = [ "10.100.0.0/24"];
endpoint = "**Server_IP_redacted**:51820";
persistentKeepalive = 25;
}
];
我想我还需要在服务器上启用 NAT:
networking.nat.enable = true;