Articles of tcp

如何发现networking中机器的MAC地址?

如何发现networking中机器的MAC地址? 我需要发现只安装了BIOS的机器(无操作系统)。 我需要find机器的MAC地址。

服务器上的TCP监视:比较netstat和lsof?

我正在监视服务器上的TCP堆栈,希望一般地推断出盒子上的应用程序的问题。 我的第一个倾向是测量所有报告状态(LISTEN,ESTABLISHED,FIN_WAIT2,TIME_WAIT等)中的套接字数量并检测一些exception。 一个队友build议'lsof'将是一个更好的工具来查看TCP栈的状态。 来自serverfault人群的任何偏好或经验提示?

作为netstat中的一个状态值,LAST_ACK是什么意思?

如果Windows服务器有几千个以LAST_ACK状态打开的端口(如netstat所示),这意味着什么? 是否因为一个端点正在等待对方回应?

我怎样才能调整初始TCP重传超时?

对于大多数基于LAN的应用程序来说,初始的TCP RTO值3s太长。 我怎样才能调低呢? 有没有一个sysctl?

客户端断开连接时TCP连接是否可以保持打开状态?

我们有一个服务器应用程序,它面临大约4000个连接的TCP耗尽问题。 这将每3或4周(大约)发生一次。 创build此服务器应用程序的供应商在检查netstat -b的输出后告诉我们,即使客户端已经丢失,某些连接仍处于打开状态。 我已经被赋予了调查为什么特定的客户端应用程序没有正确closuresTCP连接的任务。 我相信,如果客户端计算机被closures,它不能从服务器报告与该客户端build立了TCP连接。 不幸的是,我找不到任何信息来validation我的观点。 我不想浪费更多的时间来调查一个我认为不成问题的潜在问题。 tldr; 服务器可以向已closures的计算机报告build立的连接吗?

ping替代tcp?

检查networking质量是一个常见的任务 – 延迟,丢弃的数据包的数量等。但是'ping'有一些缺点:它使用ICMP。 许多ISP对ICMP和TCPstream量有不同的整形器,所以'ping'将显示10ms的延迟,但TCP连接将经历1000ms +。 – 它发送非常less量的数据包。 默认情况下,每秒一个数据包。 由于TCP协议容忍数据包丢失(它可以运行得非常好,只有一半的数据包丢失 – 这是正常的),如果ping的“30%数据包丢失”导致连接中断或绝对正常的话,这是完全不清楚的。 那么,ping是使用TCP连接而不是ICMP来检查Internet连接质量吗?

转储TCP连接没有tcpdump

在一个centos盒子上,我喜欢转储TCP连接 – 我想看看是否有服务器试图发送请求到某个IP。 通常tcpdump会做的 – 但tcpdump没有安装,安装软件不是一个选项(由于公司的政策)。 恐怕netstat不会显示我一个请求。 所以我想知道我有什么其他的select。 我在服务器上有root权限。

代理与netcat永远

我使用netcat代理VNC TCP服务器端口。 代理机器运行linux。 这是我使用的命令: mkfifo backpipe nc -l 5902 0<backpipe | nc 10.1.1.116 5902 1>backpipe 10.1.1.116是原始VNC服务在端口5902上运行的“远程”机器。在此命令之后,其他机器的本地主机上可以使用VNC服务。 但是,在每个VNC会话之后,netcat“代理服务器”将停止,这是netcat的工作方式。 如何让netcat在VNC会话终止后继续运行“代理服务”? 作为一种解决方法,我把netcat命令行放在一个无限循环中: mkfifo backpipe while true; do nc -l 5902 0<backpipe | nc 10.1.1.116 5902 1>backpipe; done 但我更喜欢一个“官方”的netcat解决scheme,根本不中断服务。 我已阅读有关“ – ”参数,但我不知道这是否适合的情况下,我还没有能够正确应用它。 补充说明: 当然,我可以通过不同的方式使用ssh隧道来实现这一点,但是我想要一个没有encryption开销的解决scheme,以尽可能地为VNC客户端做出响应。 否则,一个不同的代理解决scheme是可以的 客户端必须是VNC,没有其他协议是可能的。

通过TCP连接分割pcap文件的工具?

是否有工具将分组捕获文件(以pcap格式)拆分为每个TCP连接的单独文件? (除了可能需要在捕获上运行两次的本地生成的shell脚本…)。 像wireshark的“遵循TCPstream”,但对于命令行(恐怕wireshark将显示一个700 MB的数据包捕获时将消耗大量的内存) 我看着tcpflow,但似乎产生比原来的pcap文件大得多的文件,他们似乎不是在pcap格式。

Netcat无法在监听模式下启动

我使用的是CentOS 6.7(Final)系统,当我尝试在监听模式下运行nc ,它打印出下列内容: # nc -l 1234 nc: Protocol not available 港口没有绑定。 我也尝试了其他的端口号。 这个bug似乎已经被报告了: https : //access.redhat.com/solutions/1753753 。 不幸的是它不是很详细。 包装信息: Name : nc Arch : x86_64 Version : 1.84 Release : 24.el6 还有什么我需要尝试?