[unix] 여러 서브넷 간 라우팅

4 개의 서브넷이있는 내부 네트워크를 만들고 싶다고합시다. 중앙 라우터 나 스위치가 없습니다. 4 개의 서브넷 (192.168.0.0/24)에서 게이트웨이를 연결하는 데 사용할 수있는 “관리 서브넷”이 있습니다. 일반적인 다이어그램은 다음과 같습니다.

10.0.1.0/24 <-> 10.0.2.0/24 <-> 10.0.3.0/24 <-> 10.0.4.0/24

즉, 2 개의 인터페이스 (10.0.x.1 및 192.168.0.x)로 각 서브넷에 단일 Linux 상자를 구성합니다. 이들은 각 서브넷의 게이트웨이 장치로 작동합니다. 각 10.x / 24 서브넷마다 여러 개의 호스트가 있습니다. 다른 호스트는 10.0.xx로 사용할 수있는 인터페이스가 1 개만 있습니다.

각 호스트가 다른 서브넷에서 서로 호스트를 ping 할 수 있기를 원합니다. 내 질문은 첫 번째입니다 : 이것이 가능합니다. 둘째, 그렇다면, iptables 및 / 또는 route를 구성하는 데 도움이 필요합니다. 나는 이것을 시험해 보았지만 한 방향으로 핑을 허용하는 솔루션 만 생각해 낼 수 있습니다 (icmp 패킷은 단지 예일뿐입니다. 궁극적으로 ssh, telnet, ftp 등 호스트 간의 완전한 네트워크 기능을 원합니다) .



답변

다섯 개 네트워크를 그래서 좋아, 10.0.1.0/24, 10.0.2.0/24, 10.0.3.0/24, 10.0.4.0/24192.168.0.0/24, 4 박스는 그들 사이의 라우팅. 하자가 라우팅 박스 주소가 있다고 가정 해 10.0.1.1/192.168.0.1, 10.0.2.1/192.168.0.2, 10.0.3.1/192.168.0.3,와 10.0.4.1/192.168.0.4.

10.0.x.0/24다음과 같은 명령을 사용하여 각 라우터 상자 의 다른 네트워크에 고정 경로를 추가해야합니다 (편집 됨).

# on the 10.0.1.1 box
ip route add 10.0.2.0/24 via 192.168.0.2
ip route add 10.0.3.0/24 via 192.168.0.3
ip route add 10.0.4.0/24 via 192.168.0.4

다른 라우터 박스의 해당 경로. 인터페이스가 하나만있는 라우팅이 아닌 상자에서 기본 경로가을 가리 키도록 설정합니다 10.0.x.1. 물론 모든 인터페이스에 정적 주소와 넷 마스크를 추가해야합니다.

또한 리눅스는 기본적으로 라우터로 작동하지 않으므로 다음을 사용하여 패킷 전달을 활성화해야합니다.

echo 1 > /proc/sys/net/ipv4/ip_forward

ip위 의 명령은 설정을 영구적으로 만들지 않으므로 배포 방법에 따라 다릅니다.

내가 말했듯이, 나는 이것을 테스트하지 않았으며 무언가를 잊었을 수 있습니다.


답변