Wireguard 서버 MAQUERADE/SNAT 낮은 iptables 트래픽 통계

Wireguard 서버 MAQUERADE/SNAT 낮은 iptables 트래픽 통계

내 홈 Ubuntu 22.04 서버를 와이어가드 서버로 설정했습니다. 저는 Ubuntu 22.04 노트북 Wireguard 클라이언트에서 홈 네트워크 방화벽을 통해 인터넷에서 Wireguard 서버로 연결하고 있으므로 제 노트북이 집에 있는 것처럼 보입니다. 해외에 있을 때 국내의 제한된 콘텐츠를 볼 수 있도록 설정한 것입니다. 예를 들어, 국영 TV는 너무 똑똑해서 내 고국에서 종료되는 Proton VPN에 속아 이러한 콘텐츠 중 일부를 얻을 수 없습니다.

Wireguard 서버는 다음 iptables 규칙 중 하나를 통해 클라이언트 Wireguard 트래픽을 인터넷으로 라우팅하도록 구성됩니다.

iptables -t nat -A POSTROUTING -s 10.x.x.x/24 -o enp3s0 -j MASQUERADE
 or 
iptables -t nat -A POSTROUTING -s 10.x.x.x/24 -o enp3s0 -j SNAT --to-source 10.y.y.y

둘 다 똑같이 잘 작동하는 것 같습니다.

10.xxx/24는 wireguard VPN이고 10.yyy는 고정 IP 주소를 가진 내 LAN에 연결된 나가는 이더넷 포트 enp3s0의 IP 주소입니다.

두 호스트 모두에서 UFW를 비활성화하고 "iptables-save"를 사용하여 iptables 규칙이 위와 일치하는지 확인했다는 점을 언급해야 합니다. 그리고 서버는 ipv4 전달을 위해 구성됩니다.

내 "문제"는 대부분 이해 문제이며 누군가가 설명할 수 있기를 바랍니다. 이제 내가 아는 한 전체 설정이 매력적으로 작동합니다. 내 집 방화벽을 통해 인터넷에서 연결할 때 클라이언트는 Wireguard 서버의 리소스에 액세스할 수 있으며 클라이언트의 인터넷 트래픽은 더 이상 웹 사이트로 직접 이동하지 않지만 내 집 Wireguard 서버를 통해 (실제로는 그래야 하는 것처럼 보입니다) 인터넷 소스 IP 주소는 Whatismyipaddress.com 웹사이트에 표시된 내 홈 라우터/방화벽의 IP 주소입니다. 따라서 노트북의 Wireguard 클라이언트에서 다양한 웹사이트로의 경로 추적은 첫 번째 홉이 Wireguard 서버의 wg0 인터페이스의 IP 주소이며 제대로 작동하는 경우 예상되는 것임을 보여줍니다. "문제"는 Wireguard 클라이언트에서 YouTube 비디오를 재생할 때 MASQUERADE/SNAT 규칙(sudo iptables -L -nv -t nat)에서 많은 iptables 트래픽이 나타날 것으로 예상된다는 것입니다. 그러나 MASQUERADE/SNAT 규칙에 대한 iptables 트래픽을 총 Wireguard 서버 트래픽과 비교해 보면 이는 총 Wireguard 트래픽의 작은 비율에 불과합니다.

서버를 통해 인터넷으로 이동하는 거의 모든 클라이언트 Wireguard 트래픽이 내 홈 LAN에 연결된 Wireguard 서버의 송신 enp3s0 이더넷 인터페이스 IP 주소를 사용하여 가장되어야 한다고 예상했습니까?

모든 것이 예상대로 작동한다고 확신하지만 왜 SNAT/MAQUERADE 트래픽이 전체 트래픽의 작은 비율인지 설명할 수 있는 사람이 있기를 바랐습니다.

답변1

제 질문으로 커뮤니티에 불편을 드려 죄송합니다. iptables 매뉴얼 페이지를 읽은 후 NAT는 새 연결을 생성할 때만 사용되지만 모든 패킷에 대해서는 사용되지 않는다는 것을 발견했습니다. 내 생각엔 iptables 상태 머신이 모든 후속 패킷도 NAT를 거쳐야 함을 자동으로 감지하는 것 같습니다.

관련 정보