Kill Tcp Connection

Приветствие,

Я тестирую приложение на linux, и у нас есть ошибка, связанная с соединением с базой данных, поскольку соединение с базой данных не может быть перезапущено, и оно находится на удаленной машине, я хотел бы разорвать соединение tcp, чтобы прервать соединение и увидеть поведение,

Отключение сетевого кабеля тоже не вариант! У меня нет физического доступа на обеих машинах.

Я думал об использовании iptables, но у меня нет iptables в моей системе, поэтому мой менеджер проекта сказал мне использовать tcpkill для этого.

Может кто-нибудь сказать мне, где я могу получить RPM tcpkill и дать мне несколько советов о том, как его использовать?

1 ответ

Решение

Добавьте нулевой маршрут с помощью черной дыры ip route, предполагая, что у вас есть root:

[root@centos6 ~]# nc -zv 192.168.15.100 80
Connection to 192.168.15.100 80 port [tcp/http] succeeded!
[root@centos6 ~]# ip route add blackhole 192.168.15.100
[root@centos6 ~]# nc -zv 192.168.15.100 80
nc: connect to 192.168.15.100 port 80 (tcp) failed: Network is unreachable
[root@centos6 ~]# ip route delete blackhole 192.168.15.100
[root@centos6 ~]# nc -zv 192.168.15.100 80
Connection to 192.168.15.100 80 port [tcp/http] succeeded!

РЕДАКТИРОВАТЬ: Если у вас есть на компьютере, и приложение подключается к базе данных через полное доменное имя, добавьте полное доменное имя и укажите полное доменное имя на фиктивный адрес. Однако для разрыва соединения tcp может потребоваться некоторое время.

РЕДАКТИРОВАТЬ снова: Хорошо, я пропустил часть о tcpkill.:)

Он доступен в EPEL, который, если вы используете CentOS или Scientific Linux, вы включаете репозиторий EPEL, чтобы найти его:

[root@kerberos rsync-dist]# yum whatprovides "*/tcpkill" --enablerepo=epel
Loaded plugins: refresh-packagekit
epel/metalink                                                                                                                                                              | 9.0 kB     00:00     
epel                                                                                                                                                                       | 4.3 kB     00:00     
epel/primary_db                                                                                                                                                            | 4.3 MB     00:05     
epel/filelists_db                                                                                                                                                          | 5.5 MB     00:07     
dsniff-2.4-0.9.b1.el6.x86_64 : Tools for network auditing and penetration testing
Repo        : epel
Matched from:
Filename    : /usr/sbin/tcpkill

Убедитесь, что вы используете --enablerepo, чтобы вы могли установить его оттуда, например так:

yum -y install dsniff --enablerepo=epel

Вы можете прочитать инструкции здесь:

http://www.cyberciti.biz/howto/question/linux/kill-tcp-connection-using-linux-netstat.php

Пример:

tcpkill ip host 192.168.1.2 and not 192.168.1.111
Другие вопросы по тегам