Linux iptables/UFW - nat에서 하나의 호스트 제외

Linux iptables/UFW - nat에서 하나의 호스트 제외

현재 저는 UFW를 사용하여 다음과 같이 두 개의 IPv4 서브넷을 VPN 인터페이스로 NAT하고 있습니다.

/etc/ufw/before.rules 추출:

# NAT table rules
*nat
:POSTROUTING ACCEPT [0:0]

-A POSTROUTING -s 192.168.1.0/24 -o vpnif -j MASQUERADE
-A POSTROUTING -s 192.168.2.0/24 -o vpnif -j MASQUERADE

이제 이 NAT에서 VPN을 향한 호스트(192.168.2.100)를 제외하고 "일반" 외부 인터페이스 enp1s0을 사용하도록 하라는 요청에 직면했습니다.

여기에 표시된 두 규칙 앞에 다음과 같이 규칙을 추가해 보았습니다.

-A POSTROUTING -s 192.168.2.100/32 -o enp1s0 -j MASQUERADE

규칙이 올바른 위치에 추가된 것 같습니다.

Chain POSTROUTING (policy ACCEPT)
num  target     prot opt source               destination         
1    MASQUERADE  all  --  192.168.2.100      anywhere            
2    MASQUERADE  all  --  192.168.1.0/24     anywhere            
3    MASQUERADE  all  --  192.168.2.0/24     anywhere      

하지만 안타깝게도 트래픽은 여전히 ​​VPN 인터페이스를 통해 종료됩니다.... 누군가 여기에서 올바른 방향을 알려줄 수 있나요?

감사해요!

관련 정보