![종료하지 않고 TCP 세션 설정(RST/FIN을 보내지 않음)](https://linux55.com/image/198491/%EC%A2%85%EB%A3%8C%ED%95%98%EC%A7%80%20%EC%95%8A%EA%B3%A0%20TCP%20%EC%84%B8%EC%85%98%20%EC%84%A4%EC%A0%95(RST%2FFIN%EC%9D%84%20%EB%B3%B4%EB%82%B4%EC%A7%80%20%EC%95%8A%EC%9D%8C).png)
프로젝트에 대한 정보를 찾고 있어요. 저는 TCP 세션을 설정하고 FIN/RST를 보내지 않고도 세션을 유지할 수 있는 Linux 도구를 찾고 있습니다.
나는 iperf
이와 같은 도구를 사용해 보았고 연결이 설정되면 FIN도 발급합니다.
사용 가능한 도구가 있는지 알려주세요.
답변1
커널은 TCP 프로토콜의 일부로 SYN/FIN/RST를 관리하므로 도구가 없습니다.이와 같이종료하지 않고 TCP 스트림을 생성합니다.
몇 가지 가능성
원시 SYN 및 SYN/ACK 패킷을 직접 생성하는 코드를 직접 작성하세요.
표준 도구를 사용하되 더 이상 필요하지 않을 때까지 일시 중지하세요.
nc remoteHost remotePort & # nc example.com 80 ncPID=$! sleep 1 kill -STOP $ncPID
흐름을 닫기 전에 표준 도구를 사용하고 방화벽 규칙을 구현하여 흐름을 차단하세요.
nc remoteHost remotePort & ncPID=$! sleep 1 iptables -I OUTPUT --dst remoteHost --dport remotePort -j DROP kill $ncPID sleep 1 iptables -D OUTPUT --dst remoteHost --dport remotePort -j DROP