执行使用tcpdump抓取TCP的连接
TCP 抓包
#/bin/bash
set -e
# 定义常量
SCRIPT_NAME=$(basename "$0")
LOG_FILE="/var/log/${SCRIPT_NAME}.log"
PORTS=(
"6443"
)
function job_success(){
echo "$(date '+%Y-%m-%d %H:%M:%S') $*" >> "$LOG_FILE"
exit 0
}
function job_failed(){
echo "$(date '+%Y-%m-%d %H:%M:%S') $*" >> "$LOG_FILE"
exit 1
}
# 函数: 打印日志
function log() {
echo "$(date '+%Y-%m-%d %H:%M:%S') - $*" >> "$LOG_FILE"
}
function tcpdump_ip(){
for port in ${PORTS};do
tcpdump_port_log="/var/log/${SCRIPT_NAME}_${port}.log"
nohup tcpdump -i any tcp port ${port} >> "${tcpdump_port_log}" 2>&1 &
sleep $(( RANDOM % 2 + 1 ))
if [[ $? -ne 0 ]];then
job_failed tcpdump 命令执行失败!!
fi
done
}
function main(){
tcpdump_ip
}
main