여러 인터페이스의 게이트웨이 설정


2

두 개의 장치가 있습니다 (실제로는 PC가 아님). 장치 A가 외부 네트워크에 연결되어 있습니다.이 IP는 192.168.1.2게이트웨이로 사용합니다. 장치 B에는 아래와 같은 두 가지 인터페이스가 있습니다. 두 개의 인터페이스가 동일한 게이트웨이를 사용하므로 수동으로 설정했습니다. 핑 테스트 실패 ( ping -I eth0 www.google.com / ping -I eth1 www.google.com)

무슨 일이야?

eth0

IP : 192.168.1.1 마스크 : 255.255.255.252

eth1

IP : 192.168.1.11 마스크 : 255.255.255.248

커널 IP 라우팅 테이블 :

대상 게이트웨이 Genmask 플래그 지표 참조 사용 Iface

기본값 192.168.1.2 0.0.0.0 UG 0 eth0

기본값 192.168.1.2 0.0.0.0 UG 0 eth1

192.168.1.0 * 255.255.255.252 U 0 eth0

192.168.1.0 * 255.255.255.0 U 0 eth1

192.168.1.8 * 255.255.255.248 U 0 eth1

답변:


1

게이트웨이를 서로 다른 두 위치에있는 것으로 정의했습니다. 192.168.1.2의 eth0에서 (정확한) 192.168.1.2의 eth1에서 (잘못된)입니다. eth1에서 게이트웨이를 사용할 수 없을뿐만 아니라 해당 네트워크에서 IP 주소가 유효하지 않습니다.

두 번째 게이트웨이를 제거하면 정상적으로 작동합니다.


당신이 말했듯이, 하나를 제거하면 올바르게 작동합니다. 그러나 하나의 인터페이스에서만 작동합니다. 소켓 연결을 사용하여 다른 소스 IP를 연결하려고하면 다른 인터페이스를 통해 사용할 수 있기를 바랍니다.
Victor

그리고 ping 명령을 테스트하고 pcap 로그를 캡처하여 표시했습니다. 로그에는 발신 및 수신 패킷이 표시되지만 eth1에 대한 ping 명령 시간이 초과되었습니다.
Victor

하나의 인터페이스를 통해서만 작동한다는 것은 무엇을 의미합니까? 게이트웨이는 하나의 인터페이스에서만 존재합니다. 192.168.1.8 네트워크에 다른 장치가있는 경우 192.168.1.2에 192.168.1.8에 대한 패킷을 라우팅하도록 192.168.1.2에 라우팅을 추가해야합니다. 질문을 편집하고 더 많은 정보를 추가하십시오.
Paul
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.