정책 라우팅 문제에 대한 도움이 필요합니다.
여러 VLAN이 있는 Linux 호스트가 있습니다. 각 VLAN에 대해 고유한 경로 테이블을 생성하려고 하는데 VLAN20의 호스트와 라우터 간에 양방향으로 핑할 수 있지만 업스트림 라우터에서는 게이트웨이에 대한 ARP 요청이 아닌 원격 IP에 대한 ARP 요청이 표시됩니다. 또는 Linux 호스트에서 게이트웨이로 전송되는 트래픽입니다.
Linux 호스트 VLAN20: 192.168.20.50
라우터 인터페이스 VLAN20: 192.168.20.1
테이블 "vlan20" 생성"
$ cat /etc/iproute2/rt_tables
# # 예약된 값
#255 로컬
254화
기본값 253
220 VLAN20
0 미지정#
#현지의
1인치 루헤푸
vlan20 테이블을 사용하여 VLAN20 인터페이스에서 발생하는 모든 트래픽을 보내는 규칙을 만듭니다.
$ ip rule show
0: 모든 지역 주민에게서 찾기
32765: 모든 iif eth0.20에서 vlan20을 찾습니다.
32766: 모든 것에서 기본 찾기
32767: 전체에서 기본값 찾기
모든 트래픽을 라우터 vlan20 인터페이스로 라우팅이자형
$ ip route list table vlan20
기본값은 192.168.20.1 dev eth0.20입니다.
Linux 호스트에서 테스트
ping 8.8.8.8 -I eth0.20
192.168.20.50 eth0.20의 PING 8.8.8.8 (8.8.8.8): 56(84)바이트의 데이터. 192.168.20.50 icmp_seq=1에서 대상 호스트에 액세스할 수 없습니다.
라우터 VLAN20 인터페이스에서
8.8.8.8이 있는 9.568940 arp는 192.168.20.50을 말합니다.
8.8.8.8이 있는 10.565495 arp는 192.168.20.50을 알려줍니다.
도와 주셔서 감사합니다!
답변1
여기에 기본 호스트 라우팅과 충돌이 있는 것 같습니다. Linux 호스트 인터페이스가 eth0이고 호스트 네트워크가 eth0이라고 가정하고 10.77.0.0/24
다음 명령을 실행합니다.
$ sudo ip route add 10.77.0.0/24 via 192.168.20.1 dev eth0.20 table vlan20 $ sudo ip rule add to 192.168.20.0/24 lookup vlan20 prio 10000
보이는 루프를 피하기 위해. 아직 댓글을 달 수 없고 이전 답변이 삭제되었기 때문에(실제로는 질문이지 답변이 아님) ip -4 addr show
넷마스크와 라우팅을 볼 수 있도록 및 의 출력도 제공되어야 한다고 말씀드리고 싶습니다. 세부 사항도 마찬가지입니다.ip route show