동일한 인터페이스에서 서브넷 격리

동일한 인터페이스에서 서브넷 격리

게이트웨이 역할을 하는 Linux 시스템 CentOS에서 서브넷을 격리해야 합니다. 다음과 같은 시나리오가 있습니다. 중앙 운영 체제

eth0 pub ip addres
eth0.1 192.168.1.1
eth0.2 192.168.2.1

이제 eth0.1과 eth0.2가 통신할 수 있지만 이를 비활성화해야 합니다. VLAN을 사용할 수 없으므로 IPtables와의 통신을 비활성화해야 합니다. 어떤 아이디어가 있나요?

답변1

이것은 약간 까다롭습니다. 당신은 격리 할 수 ​​​​있습니다오직게이트웨이를 통과하는 트래픽.

예를 들어 다음 규칙을 사용할 수 있습니다.

iptables -I FORWARD -s 192.168.1.0/24 -d 192.168.2.0/24 -j DROP
iptables -I FORWARD -d 192.168.1.0/24 -s 192.168.2.0/24 -j DROP

또는:

iptables -I FORWARD -i eth0.1 -o eth0.2 -j DROP
iptables -I FORWARD -o eth0.1 -i eth0.2 -j DROP

두 서브넷 모두 동일한 물리적 인터페이스에 있으므로 모든 호스트/장치를 제어할 수 있는 한 괜찮아 보입니다. 그렇지 않으면 누군가 게이트웨이를 우회할 수 있습니다. 이를 수행하는 방법에는 여러 가지가 있습니다. 예를 들어:

  1. 다른 서브넷의 구성원이 되도록 IP를 변경하세요.
  2. 위에 나열된 다른 IP로 IP를 변경하세요.
  3. 다른 서브넷에 대한 정적 직접 경로 설정
  4. IPv6 사용
  5. DHCP 서버를 실행 중입니다...

간단히 대답하자면, 그렇게 할 수 없다는 것입니다.

관련 정보