我有几台服务器,其中netstat -s(来自/ proc / net / snmp)返回的失败连接尝试度量标准大约每秒增长一次,我想诊断这些服务器的来源.

通过使用此ipTables规则(在不同的服务器上):

-A OUTPUT -p tcp –dport 23 -j REJECT

我阻止传出的telnet,所以我可以运行这个循环:

while true ; do

telnet www.google.co.uk

netstat -s | grep “Failed connection”

done

Trying 209.85.203.94…

telnet: Unable to connect to remote host: Connection refused

52 Failed connection attempts

Trying 209.85.203.94… telnet: Unable to connect to remote host: Connection refused

53 Failed connection attempts

Trying 209.85.203.94… telnet: Unable to connect to remote host: Connection refused

54 Failed connection attempts

因此证明计数器因连接到远程套接字的失败尝试而增加. (当然,它并不能证明这是增量的唯一原因).

问题是,我怎样才能找到失败的远程地址和端口(或两者的复数)的特定组合,以便我可以查看下一步;路由/防火墙问题?

顺便说一句,如果我运行这个:

watch -n1 ‘ss | grep “\<23\>”‘

我希望在状态SYN-SENT中看到套接字,但不要.这是因为我使用了REJECT,而不是DROP?

谢谢

301_40@

让我们试着以另一种方式(艰难的方式)回答这个问题.阅读内核的源代码,看看,只有一个地方,这个度量增量 –

tcp_done函数.正如我们在代码中看到的,增量仅发生在SYN_SEND或SYN_RECV状态的连接中.然后我们检查,从哪里可以调用tcp_done.我们可以找到几个地方:

> tcp_reset – 在连接中止时调用(收到第一个标志的回复数据包).是的,它可能发生在SYN_SENT和SYN_RECV状态(以及其他状态,理论上).

> tcp_rcv_state_process – 在状态TCP_FIN_WAIT1和TCP_LAST_ACK中调用,因此度量不会递增 – 这不是我们的情况.

> tcp_v4_error – 在SYN_SENT或SYN_RECV的情况下调用. ICMP处理程序调用的tcp_v4_error函数.

> tcp_time_wait – 调用套接字进入等待时间或等待等待2状态 – 不是我们的情况.

> tcp_write_error – 超时时从几个地方打来电话,超过重传次数.这也可能是我们的怀疑.

现在,打开任何TCP FSM图来检查,在什么情况下我们的连接可以在SYN_SENT或SYN_RECV中.

在客户端情况下,它可以只是SYN_SENT状态,其中syn数据包正在传输,并且由于接收到拒绝(tcp-rst或icmp错误)或未收到回复而中止连接.

在服务器情况下,它可能只是SYN_RECV状态(已经接收到syn并且已经发送了syn ack),并且由于接收到拒绝(某些地方拒绝了syn ack)或超过了回复等待超时(未收到确认)而中止连接.

现在您已了解更新此度量标准的原因,并可以检查系统中可能的源代码.在现代内核中,有一个强大的工具可以在内核级别进行故障排除.从布兰登格雷格开始于this brief tutorial.

linux 跟踪链接 超时,Linux:跟踪netstat -s“连接尝试失败”的来源相关推荐

  1. linux g 链接,图解linux系统的软连接和硬链接

    我自己做的图片大家参考下: 软连接硬链接的区别: 硬连接指通过索引节点来进行的连接.在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Ind ...

  2. 怎么用Linux下载链接,在linux系统里,下载的迅雷专用链接!

    wtf1981 于 2009-06-03 21:18:08发表: 事实看看 you_me 于 2009-05-20 19:34:17发表: 试试看吧 563909373 于 2009-05-20 19 ...

  3. linux硬链接含义,Linux中硬链接与软链接

    一.硬链接 (一)什么是硬链接 硬链接是指通过索引节点来进行链接.在Linux中一个索引节点可能被多个文件名指向,这样就会产生多个硬链接,它的作用是可以防止误删文件.删除其中一种硬链接并不影响索引节点 ...

  4. linux timespec 链接库,Linux内核 timespec_sub()

    函数:timespec_sub() 函数timespec_sub()将两个timespec类型的变量作减法,结果保存在一个新的timespec类型的变量中. 文件包含: 函数定义: 在内核源码中的位置 ...

  5. linux 有线链接树莓派,linux-通过公共互联网连接到树莓派

    我有一个树莓派,并且我有一个程序只能在我需要从应用程序运行时运行. 因此,基本上需要从公共互联网连接到我的树莓派. 对此不确定,我想我需要通过公共互联网来制作树莓派ssh,即直接通过某个IP地址进行连 ...

  6. linux host命令超时,Linux中的PING命令。每日一个小知识。不怕学不会

    PING(数据包Internet Groper)命令用于检查主机与服务器/主机之间的网络连接.该命令以IP地址或URL为输入,并通过消息" PING"将数据包发送到指定的地址,并记 ...

  7. linux硬链接符号,Linux — 硬链接与符号链接

    # 1. 使用文件 /oradata2/yct/rc.local 进行测试 [oracle@sbdatabase yct]$ pwd /oradata2/yct [oracle@sbdatabase ...

  8. linux 复制 链接文件,Linux硬链接、软连接和复制的区别

    1. 硬连接 命令:ln file1 file2 限制:不能跨分区:文件夹无效. 作用:实现对file1的一个硬连接.不同于拷贝(复制). 效果:修改file1,file2会变:修改file2,fil ...

  9. adb connect 远程adb连接手机无法连接,显示由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。(10060)windows调试Linux解决方式 ip连接方式

    adb connect 远程adb连接手机无法连接,显示由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败.(10060) 解决方法 解决步骤 解决方法 解决目标前提 1.需要手机r ...

最新文章

  1. javascript 鼠标事件总结
  2. php获取图像尺寸大小的方法,Javascript从php生成的图像中获取图像大小
  3. CenterOS x64安装serv-U
  4. C++ 模板何时被实例化
  5. (5)ZYNQ FPGA中断介绍
  6. 【ElasticSearch】Es 源码之 GatewayMetaState 源码解读
  7. Mybatis Mapper动态代理方式 typeAliases 别名的使用
  8. tolua unity 报错_Unity3D热更新之LuaFramework篇[01]--从零开始
  9. java 抽象类与接口的区别及其在jdk中的应用
  10. FFA 2021 专场解读 - 实时数据湖
  11. 程序员常用的数学公式
  12. 有道计算机网络知识,网易有道推广介绍1 让你了解到网易的知识。。。.pptx
  13. 1 密码学的发展历程
  14. 大运期间寄往深圳邮件需出示有效身份证件
  15. UIStepper (加减符号)(步进控件)
  16. 什么网页游戏是按地地狱划分服务器的,不思议迷宫地域边境详细攻略 全方位介绍地狱边境所有玩法...
  17. 明源云客微信抢房技巧_抢房明源系统是什么意思_明源云客抢房软件
  18. 亲测好用的PS图片无损放大插件:Blow Up 3 for Mac
  19. mysql中如何去除重复数据_MySQL如何去除重复数据?
  20. python re.split 空格_str.split和re.split中空格的区别

热门文章

  1. Dubbo服务发布调用
  2. MySQL修改存储过程
  3. 这四种情况下,才是考虑分库分表的时候!
  4. 你真的会停止线程吗?
  5. jdbc连接数据库失败,com.microsoft.sqlserver.jdbc.SQLServerException: 到主机 的 TCP/IP 连接失败。
  6. JSP的3大指令Page,include,taglib
  7. Java监听器的用法(一):内部类监听器
  8. System.currentTimeMills()显示系统当前时间
  9. WEB前端:浏览器(IE+Chrome+Firefox)常见兼容问题处理【01】
  10. pycharm如何改为中文显示?