동일한 인터페이스에서 수신 및 발신 라우팅

동일한 인터페이스에서 수신 및 발신 라우팅

내 라우터는 현재 네트워크의 모든 PC와 Ubuntu 데스크탑(일부 서버 기능 포함)에 NAT를 제공합니다. Ubuntu 시스템을 적절한 방화벽으로 사용하고 싶지만 이더넷 인터페이스가 하나만 있습니다. 그래서 나는 그것을 실행하기 위해 다음을 구상했습니다.

      Ubuntu/firewall     router/WAN          DHCP
IP    192.168.1.1         192.168.1.10        192.168.1.*
GW    192.168.1.10        WAN IP              192.168.1.1
  • 설명한 대로 Ubuntu 시스템과 라우터를 정적으로 구성하면 모든 것이 작동할 것으로 기대할 수 있습니까?
  • INPUT합계를 처리하기 위해 단일 물리적 인터페이스를 사용해도 괜찮습니까 FORWARD? 가상 인터페이스 생성과 같은 작업을 수행해야 합니까?

답변1

두 개의 별도 네트워크를 사용하지 않는 이유는 무엇입니까? 하나의 카드로 서로 다른 네트워크(eth0, eth0:1, eth0:2 등)의 두 IP를 쉽게 추가할 수 있습니다.

ifconfig eth0 192.168.1.1/24
ifconfig eth0:0 192.168.10.1/24

이렇게 하면 한 네트워크에서 다른 네트워크로 트래픽을 라우팅하는 방법을 알고 있는 Ubuntu 펌웨어를 통해 인터넷에 액세스할 필요 없이 모든 컴퓨터가 네트워크 내에 있게 됩니다.

답변2

질문에 설명된 작업을 수행했습니다. 이 작업을 수행할 수 있는 Ubuntu 구성은 다음과 같습니다.

$ sudoedit /etc/network/interfaces

auto eth0
iface eth0 inet static
        address 192.168.0.10
        netmask 255.255.255.0
        gateway 192.168.0.1

(실제로 br0내 파일에는 브리지된 VM에서 물리적 LAN까지 있지만 더 일반적인 것으로 대체했습니다 eth0.)

$ sudoedit /etc/sysctl.conf

# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1

기본적으로 sysctl.conf의 패킷 전달 구성이 설정이 제대로 작동한다고 믿습니다.

traceroute앞서 본 내용을 통해 설정이 실제로 작동하고 Ubuntu에 구성된 방화벽 규칙이 실제로 예상대로 트래픽을 필터링하고 있음 192.168.0.10을 확인했습니다.192.168.0.1

관련 정보