네트워크 별칭 IP가 포함된 SNAT RHEL 5.5

네트워크 별칭 IP가 포함된 SNAT RHEL 5.5

Rehat Enterprise Linux Server Release 5.5(Tikanga)를 사용하고 있으며 다음과 같은 두 가지 인터페이스가 있습니다.

  • eth0: 공용 IP는 xxx.xx.64.118입니다.
  • eth0:0: 공용 IP는 xxx.xx.116.19입니다.
  • eth1: 개인 IP는 172.16.23.2입니다.

기본적으로 내 iptable POSTROUTING 체인 규칙은 다음과 같습니다.

Chain POSTROUTING (policy ACCEPT)
target      prot  opt source              destination
MASQUERADE  all  --  0.0.0.0/0            0.0.0.0/0

이는 eth0의 IP가 NAT IP임을 의미합니다. 이제 eth1에 연결된 특정 호스트(172.16.23.6)가 인터넷에 연결될 때 eth0:0(예: xxx.xx.116.19)과 동일한 소스 IP를 갖기를 원합니다. 그래서 다음 규칙을 추가했습니다.

iptables  -t nat -A POSTROUTING -s 172.16.23.6 -o eth0 -j SNAT --to-source xxx.xx.116.19

다음과 같이 MASQUERADE 위에 새로운 규칙을 추가합니다.

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
SNAT       all  --  172.16.23.6       0.0.0.0/0           to:xxx.xx.116.19
MASQUERADE  all  --  0.0.0.0/0            0.0.0.0/0

내 추측에 따르면 IP 172.16.23.6을 가진 호스트는 인터넷에 연결될 때 공용 IP xxx.xx.116.19를 갖게 됩니다(whatismyip.com을 통해 확인). 하지만 여전히 eth0(xxx.xx.64.118)의 공개 IP가 표시됩니다. 우분투도 잘 작동합니다. 누구든지 문제가 무엇인지 제안할 수 있습니까?

관련 정보