我正在尝试通过 docker 创建和配置 Wireguard 服务器。
为此,我使用了 linuxserver/wireguard 图像和您可以在下面找到的配置。
docker 启动时没有错误,配置生成正确,我可以从客户端计算机毫无问题地连接和握手。
问题是一旦连接我只能ping通VPN网关(10.1.0.1)和docker IP(10.0.0.4)。
所以这是我能做的总结:
来自容器:
Ping 10.0.0.1 (Container Gateway) - YES
Ping 10.0.0.2 (DHCP Container) - YES
来自 Wireguard 客户端帖子:
Ping 10.0.0.1 (Container Gateway) - NO
Ping 10.0.0.2 (DHCP Container) - NO
Ping 10.1.0.1 (Wireguard VPN Gateway) - YES
Ping 10.0.0.4 (Wireguard container IP) - YES
经过多次研究,我发现这可能是容器上的路线问题,但如果是这样,我不知道如何解决。
你知道为什么我不能 ping 通其他机器,比如 10.0.0.2 吗?
docker-compose.yml :
version: "3.9"
networks:
agence-a:
external: true
services:
wireguard-a:
container_name: wireguard-a
image: linuxserver/wireguard
restart: unless-stopped
networks:
agence-a:
ipv4_address: ${WIREGUARD_IP}
ports:
- 51821:51820/udp
environment:
- TZ=${TZ}
- PUID=${PUID}
- PGID=${PGID}
- PEERS=${WIREGUARD_PEERS}
- SERVERURL=${WIREGUARD_SERVERURL}
- SERVERPORT=${WIREGUARD_SERVERPORT}
- PEERDNS=${WIREGUARD_PEERDNS}
- INTERNAL_SUBNET=${WIREGUARD_INTERNAL_SUBNET}
- ALLOWEDIPS=${WIREGUARD_ALLOWEDIPS}
volumes:
- ${ROOT_PATH}/wireguard/config:/config
sysctls:
- net.ipv4.conf.all.src_valid_mark=1
cap_add:
- NET_ADMIN
- SYS_MODULE
.环境:
# GLOBAL CONFIG
TZ=Europe/Paris
ROOT_PATH=/home/debian/agencea-stack
PUID=1000
PGID=1000
# WIREGUARD CONFIG
WIREGUARD_IP=10.0.0.4
WIREGUARD_PEERS=Test1,Test2
WIREGUARD_SERVERURL=192.168.1.30
WIREGUARD_SERVERPORT=51821
WIREGUARD_PEERDNS=1.1.1.1, 9.9.9.9
WIREGUARD_INTERNAL_SUBNET=10.1.0.0
WIREGUARD_ALLOWEDIPS=10.0.0.0/24,10.1.0.0/24
ip r :
default via 10.0.0.1 dev eth0
10.0.0.0/24 dev eth0 proto kernel scope link src 10.0.0.4
10.1.0.2 dev wg0 scope link
10.1.0.3 dev wg0 scope link