를 사용하여 ESTABLISHED TCP 연결을 종료하려고합니다 tcpkill
. 연결은 개방형 HTTPS 연결입니다. netstat에 다음과 같이 나타납니다.
tcp 0 0 X.X.X.X:55601 X.X.X.X:https ESTABLISHED
따라서 man page에 따라 다음을 입력하십시오.
$ tcpkill -i eth1 -9 port 443
tcpkill 유틸리티는 다음을 출력합니다.
tcpkill: listening on eth1 [port 443]
… 그냥 매달립니다. 약 15 분 동안 기다린 후에는 무슨 일인지 잘 모르겠습니다.
내가 뭔가 잘못하고 있습니까?
답변
tcpkill이 작동하려면 (즉, 올바른 순서 번호와 소스 포트가있는 재설정 패킷을 작성) 트래픽이 있어야합니다. 더 이상 인쇄되지 않으면 트래픽이없는 것입니다. 실행할 수 있는지 확인하십시오 tcpdump -i eth1 port 443
.
답변
트래픽이없는 확립 된 연결 (JVM의 디버그 세션)을 종료해야했습니다.
tcpkill
@ Mark Wagner에서 설명했듯이 대답은 할 수 없지만 killcx
1.0.3 ( link )은 (Ubuntu 10.04)했습니다.
몇몇 라이브러리에 의존하는 perl 스크립트입니다.
편집하다
로 살해 할 수없는 연결에 killcx
모두의 조합 tcpkill
과 killcx
그것을했다 :
경우에서 연결 말 LOCAL:PORTL
까지를REMOTE:PORTR
- 터미널에서 tcpkill을 시작하십시오
tcpkill port PORTL
. Tcpkill은 트래픽 수신을 시작합니다 - 두 번째 터미널 실행 killcx에서 :
killcx REMOTE:PORTR