Linux如何指定源端口打流

背景

在网络中,经常遇到丢包问题,特别是特定的流丢包,何为特定的流,即五元组一样的报文(源目的ip,源目的端口,协议)。在排查问题时,我们经常需要来构造这样的流量去复现问题。那有什么比较好用的工具来实现这样的功能呢?

说明

其中nc工具,是一个不错的工具,它能够指定五元组进行打流。

nc -p 33988 192.168.0.28 5001 < /dev/zero

但是除了nc之外,还有没有其他的方法呢?自然是有的。

不知道你有没有在Linux服务器抓过包,抓包的时候,有没有发现,tcp/udp端口的范围在一定的范围之内,比如常见的32768-60999,为什么是这样的范围,正常端口的范围不是在 0~65535么?是什么来控制着这个端口范围呢?

在Linux系统中,是由内核参数 /proc/sys/net/ipv4/ip_local_port_range 来控制的。

sysctl -w net.ipv4.ip_local_port_range='45004 45004' 你就能将你发起的测试连接的源端口控制在 45004来做测试。

在内核协议栈设计中,还是有比较多的知识可以学习和了解。

相关推荐
xywww16817 分钟前
大模型 API 选型实战:GPT、Gemini、Claude 接入时该看哪些指标?
运维·服务器·人工智能·python·gpt·langchain
梦想的颜色3 小时前
【Docker原理】Docker 容器一文打尽:生命周期、环境管控、迁移备份、日志进程排查、垃圾清理
运维·docker·容器·容器生命周期·容器日志排查·容器迁移备份·容器进程管理
sdghterhd5 小时前
WebSocket 快速入门教程(附示例源码)
网络·websocket·网络协议
donoot6 小时前
Linux系统下图书馆级电子书全自动标准化分类整理完整实施方案
大数据·linux·运维·电子书管理
xy34536 小时前
Wireshark捕获过滤器——语法元素详解
网络·测试工具·渗透测试·wireshark
ITKEY_6 小时前
macOS brew 安装的nginx 文件在哪里?
运维·nginx·macos
Felix-lxd7 小时前
Ubuntu 22.04 配置 Nginx
linux·nginx·ubuntu
Elastic 中国社区官方博客7 小时前
如何比较两个 Elasticsearch 索引并找出缺失的文档
大数据·运维·数据库·elasticsearch·搜索引擎
DLYSB_7 小时前
生命通道:如何用 HIS 医疗系统直连网络声光终端,打造“零延误”的危急值响应网关?
java·网络·数据库·报警灯
Tim_Van8 小时前
在 CentOS 7 中安装 Chromium 的完整步骤
linux·运维·chrome·centos