두 개의 Linux 시스템이 있고 socat을 사용하여 둘 사이에 터널을 만들고 싶습니다. 이것이 제 솔루션입니다.
기계 1:
socat -d -d UDP-LISTEN:4711,reuseaddr TUN:10.50.50.1/24,iff-up,iff-broadcast,iff-pointopoint
기계 2:
socat UDP:[M1 public IP]:4711 TUN:10.50.50.2/24,iff-up,iff-broadcast,iff-pointopoint
두 시스템의 장치 tun
가 생성되고 해당 IP 주소가 할당되었으며 한 시스템에서 다른 시스템으로 핑을 보낸 후 패킷이 전송되었고 모든 것이 정상이었습니다.
PING 10.50.50.1 (10.50.50.1) 56(84) bytes of data.
64 bytes from 10.50.50.1: icmp_seq=1 ttl=64 time=105 ms
64 bytes from 10.50.50.1: icmp_seq=2 ttl=64 time=100 ms
64 bytes from 10.50.50.1: icmp_seq=3 ttl=64 time=99.1 ms
64 bytes from 10.50.50.1: icmp_seq=4 ttl=64 time=97.7 ms
iperf3
문제는 해당 터널 장치에 일부 트래픽을 넣을 때(일부 중요한 트래픽을 사용하거나 수동으로 라우팅할 때) 일정 시간이 지나면 모든 패킷이 삭제될 때 발생합니다. 이 터널을 빅데이터 전송에 사용하려면 어떻게 해야 하나요? 이 문제는 socat 터널링에 내재되어 있습니까? 아니면 네트워크 인프라와 ISP(M2 시스템이 이란에 있음)에 의존합니까?
답변1
-d -d -d -d -lu 옵션을 사용하여 두 socat 프로세스를 모두 시작하고 전송이 실패할 때 메시지를 확인하세요.