Linux IP 전달 문제

Linux IP 전달 문제

내 환경에서는 대부분의 서버에 2개의 네트워크 카드가 있습니다. 애플리케이션에서 사용하는 기본/사용자 네트워크 카드와 백업, 대량 복사 등에 사용되는 보조/백업 어댑터

방금 새 서버를 설정했는데 기본/사용자 어댑터만 있는 클라이언트에서 보조 어댑터를 ping하는 데 문제가 있습니다.

테스트 클라이언트에서 기본/보조 어댑터의 다른 서버에 ping을 보낼 수 있습니다.

네트워크:

  • 192.168.151.0 == 내 서버와 사용자 네트워크

  • 192.168.147.0 == 내 클라이언트와의 사용자 네트워크

  • 192.168.245.0 == 백업 네트워크

컴퓨터:

newServer (rhel 6) [일명 말썽꾼]

  • eth0 : 192.168.151.180 (사용자 네트워크)

  • eth1 : 192.168.245.187 (백업 네트워크)

이전 서버(rhel 5)

  • eth0 : 192.168.151.203 (사용자 네트워크)

  • eth1 : 192.168.245.236 (백업 네트워크)

pubClient (rhel5) [사용자 인터페이스만 있는 클라이언트 시스템]

  • eth0 : 192.168.147.118 (사용자)

pubClient에서 eth0 또는 eth1 IP 주소로 oldServer를 ping할 수 있습니다. 나는 eth1을 ping할 때 ping의 반환 경로가 oldServer의 eth0 인터페이스라는 것을 알아냈습니다(tcpdump).

pubClient에서 newServer의 eth0 인터페이스를 ping할 수 있지만 newServer의 eth1 어댑터를 ping하면 아무 일도 일어나지 않습니다. tcpdump를 사용하면 백업 네트워크 인터페이스로 들어오는 트래픽이 표시되지만 나가는 트래픽은 없습니다. eth1 어댑터는 제대로 작동합니다. newServer에서 245 인터페이스나 pubClient를 사용하여 백업 네트워크의 다른 장치에 문제를 표시하지 않고 ping할 수 있습니다.

두 서버의 라우팅 테이블은 간단하고 기능적으로 동일합니다.

newServer # ip route list
192.168.151.0/24 dev eth0  proto kernel  scope link  src 192.168.151.180
192.168.245.0/24 dev eth1  proto kernel  scope link  src 192.168.245.187
default via 192.168.151.5 dev eth0

oldServer # ip route list
192.168.151.0/24 dev eth0  proto kernel  scope link  src 192.168.151.203
192.168.245.0/24 dev eth1  proto kernel  scope link  src 192.168.245.236
default via 192.168.151.5 dev eth2

두 상자 모두에서 실행되는 방화벽이 없습니다. net.ipv4.ip_forward = 0 두 서버 모두에서. newServer가 RHEL6을 실행 중입니다. 일종의 네트워크 통과(예: ip_forward)에 대한 기본값이 기본적으로 비활성화되어 있는지 궁금합니다.

내 네트워크 담당자는 이 시스템 간의 라우팅에 아무런 문제가 없다고 주장합니다.

문제가 무엇인지 추측해 주시면 감사하겠습니다.

건배

-스콧

답변1

해결되었습니다!

고마워요 웨인.

새로운 (rhel6 서버)

echo "0" >/proc/sys/net/ipv4/conf/eth0/rp_filter
echo "0" >/proc/sys/net/ipv4/conf/eth1/rp_filter  

"uRPF 확인은 패킷이 들어올 때 소스 주소를 확인하는 것입니다. 해당 소스 주소에 대한 경로가 해당 인터페이스를 벗어나지 않으면 패킷이 삭제됩니다."

http://lartc.org/howto/lartc.kernel.html

관련 정보