Centos7은 WireGuard를 설치하고 클라이언트는 트래픽을 보내기만 하고 받지 않습니다.

Centos7은 WireGuard를 설치하고 클라이언트는 트래픽을 보내기만 하고 받지 않습니다.

내 목적은 매우 간단합니다. A는 서버이고 B는 A에 모든 트래픽을 전달한 다음 A를 사용하여 인터넷에 액세스할 수 있습니다. 아래는 내 서버 구성과 휴대폰 구성입니다. 파일.

[Interface]
PrivateKey = $(cat servie_privatekey)
Address = 10.1.1.1/24
SaveConfig = true


PostUp  = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE; ip6tables -A FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE; ip6tables -D FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

ListenPort = 50814
DNS = 223.5.5.5
MTU = 1420

[Peer]
#手机
PublicKey =  $(cat phone_publickey)
AllowedIPs = 10.1.1.2/32

모바일 프로필

[Interface]
  PrivateKey = $(cat phone_privatekey)
  Address = 10.1.1.2/24
  DNS = 223.5.5.5
  MTU = 1420

[Peer]
  PublicKey = $(cat servie_publickey)
  #Endpoint = wowxql.top:50814
  Endpoint = 96.45.163.157:50814
  AllowedIPs = 0.0.0.0/0, ::0/0
  PersistentKeepalive = 25 " > phone.conf

IP 전달이 활성화되었습니다.

echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
echo "net.ipv4.conf.all.proxy_arp = 1" >> /etc/sysctl.conf
sysctl -p /etc/sysctl.conf

문제는 휴대폰 연결 후 보내기만 하고 수신은 되지 않는다는 점이다. 서버에서 "WG" 명령어를 입력하면 휴대폰의 연결정보와 IP 주소는 볼 수 있지만 휴대폰이 접속할 수 없다. 전화로 모든 네트워크.

다른 시스템에서도 동일한 구성이 가능하다는 사실에 놀랐습니다.

관련 정보