인터페이스 간 라우팅 방법

인터페이스 간 라우팅 방법

나는 다음과 같은 설정을 가지고 있습니다 :

                         (192.168.4.1)     
   Device A     <------->   device B   <------->   Device C
(192.168.5.84)           (192.168.5.1)          (192.168.4.5)

wlan0 = 192.168.4.1장치 B에는 실제로 DHCP 서버가 실행되는 Wi-Fi 인터페이스( )가 있습니다 . 그 다음에는 케이블 인터페이스( eth0 = 192.168.5.1)가 있습니다.

내가 달성하고 싶은 것은 장치 A와 C가 서로 대화할 수 있다는 것입니다. 나는 이 결과를 얻는 방법에 대해 읽었으며 이 작업을 수행하려면 라우팅을 사용해야 한다는 것을 알았습니다. 몇 가지를 시도했지만 왜 작동하지 않는지 이해가 되지 않습니다.

장치 A에는 고정 IP(서브넷 255.255.255.0및 게이트웨이 192.168.5.1)가 있습니다.

장치 C는 DHCP 서버로부터 IP(서브넷 255.255.255.0및 게이트웨이 )를 수신합니다.192.168.4.1

내가 뭘 한거지:

장치 BI에서 ipforward 활성화/etc/sysctl

경로 추가:

iptables -A FORWARD -i eth0 -o wlan0 -s 192.168.5.0/24 -d 192.168.4.0/24 -j ACCEPT
iptables -A FORWARD -i wlan0 -o eth0 -s 192.168.4.0/24 -d 192.168.5.0/24 -j ACCEPT 

문제는 장치 A와 C 모두 장치 B에서 연결할 수 있다는 것이므로 이는 라우팅 문제임이 틀림없다는 것을 의미합니다. 그래서 제 질문은, 장치 B가 A에서 C로 트래픽을 라우팅하는 지점에 어떻게 도달할 수 있느냐는 것입니다.


고쳐 쓰다: 제가 언급하지 않은 것은 장치 B의 설정만 변경하여 이 결과를 얻고 싶다는 것입니다.

답변1

iptables를 사용할 필요가 없습니다. IP 전달을 성공적으로 활성화한 경우(예: 로 설정 /proc/sys/net/ipv4/ip_forward) 1두 네트워크가 모두 B에 직접 연결되어 있으므로 장치 B가 작업을 수행합니다. 장치 A와 C에서 올바른 라우팅이 손실될 수 있습니다.
A에:

ip route add 192.168.4.0/24 via 192.168.5.1

C에서:

ip route add 192.168.5.0/24 via 192.168.4.1

관련 정보