Як вбити TCP-з'єднання за допомогою утиліти tcpkill


11

Я намагаюся вбити встановлене TCP-з'єднання за допомогою tcpkill. З'єднання - це відкрите з'єднання HTTPS. Він відображається на netstat у вигляді:

tcp        0      0 X.X.X.X:55601         X.X.X.X:https    ESTABLISHED

Отже, відповідно до довідкової сторінки , я ввожу:

$ tcpkill -i eth1 -9 port 443

Утиліта tcpkill виводить:

tcpkill: listening on eth1 [port 443]

... а потім просто висить. Почекавши хвилин 15, я не впевнений, що тут відбувається.

Я щось роблю не так?

Відповіді:


10

Щоб tcpkill працював (тобто створити пакет скидання, який має правильний номер послідовності та вихідний порт), повинен бути трафік. Якщо нічого більше не надруковано, то трафіку немає. Щоб перевірити, чи можете ви запустити tcpdump -i eth1 port 443.


3

Мені довелося вбити встановлене з'єднання, на якому не було трафіку (сесія налагодження на JVM).

tcpkillяк пояснено у @Mark Wagner, відповідь не міг цього зробити, однак killcx1.0.3 ( посилання ) зробив (Ubuntu 10.04).

Це сценарій perl, який має залежність від кількох бібліотек.

Редагувати

Про зв’язок, який неможливо було вбити за killcxдопомогою комбінації обох, tcpkillі killcxце було зроблено:

Скажіть з'єднання, якщо від LOCAL:PORTL доREMOTE:PORTR

  • У терміналі запуску tcpkill: tcpkill port PORTL. Tcpkill почне прослуховувати трафік
  • У другому терміналі запуску killcx: killcx REMOTE:PORTR
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.