linux – 没有tcpdump的转储tcp连接
发布时间:2020-05-24 22:04:40 所属栏目:Linux 来源:互联网
导读:在centos框中,我喜欢转储tcp连接 – 我想看看服务器是否尝试向某个IP发送请求.通常tcpdump可以解决问题 – 但是没有安装tcpdump,并且安装软件不是一种选择(因为公司政策).我担心netstat不会向我显示单个请求. 所以我想知道我还有其他选择.我在服务器上有root
|
在centos框中,我喜欢转储tcp连接 – 我想看看服务器是否尝试向某个IP发送请求.通常tcpdump可以解决问题 – 但是没有安装tcpdump,并且安装软件不是一种选择(因为公司政策).我担心netstat不会向我显示单个请求. 所以我想知道我还有其他选择.我在服务器上有root访问权限. 解决方法你肯定有 python吗?from socket import *
from struct import unpack
import sys
INTERFACE = "eth0"
TARGET = "8.8.8.8"
if __name__ == "__main__":
sock = socket(AF_PACKET,SOCK_DGRAM,0x0800)
sock.bind((INTERFACE,0x0800))
while True:
data = sock.recvfrom(1500,0)[0]
ip = inet_ntop(AF_INET,data[12:16])
if ip == TARGET:
print "GOT TARGET"
sys.exit(1)
这将以“GOT TARGET”退出,提供返回匹配的IP地址.由于TCP必须在握手期间发回一些东西,因此应该从特定目标地址捕获任何内容.它不关心协议是TCP还是UDP(我也不检查). 别忘了改变TARGET和INTERFACE. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- c – 在不使用pkill的情况下优雅地退出程序的最佳方法
- 不断回收的Linux和Swap空间中的交换大小不断增加?
- redhat – Linux:如何将参数传递给`service foo start`(在
- 电子邮件 – 从root @ servername更改传出邮件地址 – rack
- linux – 如何找到旧版GLIB的安装位置?
- LINUX教程:配置Nginx+PHP的正确思路与过程
- linux – 如何在开始wtmp之前找到谁登录
- linux – 在Debian Squeeze上升级phpmyadmin(和其他软件包)
- LINUX实战:Zabbix3.0/3.2/3.4自动安装脚本
- linux – 用于PHP会话的Ubuntu的垃圾收集cron作业需要25分钟
