AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 504678
Accepted
quanta
quanta
Asked: 2013-05-03 21:26:45 +0800 CST2013-05-03 21:26:45 +0800 CST 2013-05-03 21:26:45 +0800 CST

LVS-TUN:ifconfig 显示 tunl0 接口的错误和冲突?

  • 772

Check_MK给我发了一封邮件如下:

***** Nagios *****

Notification Type: PROBLEM

Service: Interface 5
Host: foo
Address: x.y.z.t
State: CRITICAL

Date/Time: Fri May 3 10:02:40 ICT 2013

Additional Info: CRIT - [tunl0] (up) speed unknown, in: 3.39MB/s, out: 0.00B/s, out-errors: 100.00%(!!) = 0.1

运行ifconfig,我得到:

tunl0     Link encap:IPIP Tunnel  HWaddr   
          inet addr:x.y.z.t  Mask:255.255.255.255
          UP RUNNING NOARP  MTU:1480  Metric:1
          RX packets:92101704629 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:652 dropped:0 overruns:0 carrier:0
          collisions:652 txqueuelen:0 
          RX bytes:18941091817671 (17.2 TiB)  TX bytes:0 (0.0 b)

注意错误和碰撞。我知道 collisions 字段的非零值表示网络拥塞的可能性。但:

  1. 确切原因可能是什么?我该如何排除故障?
  2. 有没有类似ethtoolIPIP Tunnel接口的?

修改信息ipip

filename:       /lib/modules/2.6.18-194.17.1.el5/kernel/net/ipv4/ipip.ko
license:        GPL
srcversion:     288C625C7521D577F7AD9E4
depends:        tunnel4
vermagic:       2.6.18-194.17.1.el5 SMP mod_unload gcc-4.1
module_sig: 883f3504ca37590565662cff69dd0be11277ff0a08d3a3...

ip隧道秀

tunl0: ip/ip  remote any  local any  ttl inherit  nopmtudisc

更新于 5 月 6 日星期一 10:05:01 ICT 2013

@Danila Ladner:通过谷歌搜索,我发现这个链接与你的观点相同:

我的隧道不工作:

ifconfig tunl<n>报告错误和冲突

你有没有使用ifconfig, 也许是ifconfig ... pointopoint ...为了建立你的隧道?

关掉它; 删除它; 重新开始ip。

但是你能再详细说明一下吗?

@谢尔盖弗拉索夫:

tunl0     Link encap:IPIP Tunnel  HWaddr   
          inet addr:x.y.z.t  Mask:255.255.255.255
          UP RUNNING NOARP  MTU:1480  Metric:1
          RX packets:81621711099 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2 errors:692 dropped:0 overruns:0 carrier:0
          collisions:692 txqueuelen:0 
          RX bytes:16915649263419 (15.3 TiB)  TX bytes:120 (120.0 b)

我不明白为什么从tunl0接口发送了2个数据包?我将设置一个事件处理程序,以便在计数器增加tcpdump时运行。collisions让我们拭目以待。


更新于 5 月 7 日星期二 14:05:39 ICT 2013

@Danila Ladner:为了排除这种可能性,我已经尝试了你的建议:

ifdown tun0
modprobe -r ipip
modprobe ipip
ip addr add dev tunl0 x.y.z.t/32 brd x.y.z.t
ip link set tunl0 up

我在等着看问题是否解决:

tunl0     Link encap:IPIP Tunnel  HWaddr   
          inet addr:x.y.z.t  Mask:255.255.255.255
          UP RUNNING NOARP  MTU:1480  Metric:1
          RX packets:19630041 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:4083271398 (3.8 GiB)  TX bytes:0 (0.0 b)
linux
  • 2 2 个回答
  • 3571 Views

2 个回答

  • Voted
  1. Sergey Vlasov
    2013-05-06T11:55:24+08:002013-05-06T11:55:24+08:00

    隧道接口的collisions计数器在两种情况下增加:ipip

    1. 如果封装包的下一跳是同一个隧道接口: ipip.c line 437。

    2. 如果封装包的下一跳路径MTU小于68: ipip.c第447行。

    这两种情况通常只有在封装的流量循环回同一个隧道时才会发生(第一种情况是直接循环,第二种情况发生在路径 MTU 由于一些更复杂的循环而没有立即减少到零时)由第一个条件检测到)。一个可能的原因是封装数据包的正常路由暂时关闭,而这些数据包的下一条最佳路由恰好是隧道本身,导致环路。

    然而,在 LVS-TUN 的情况下,根本不应该向隧道发送任何内容(在这种情况下,隧道接口是只接收的),除非一些被误导的软件通过添加不需要的路由tunl0。

    • 4
  2. Best Answer
    Danila Ladner
    2013-05-08T03:59:40+08:002013-05-08T03:59:40+08:00

    正如 quanta 指出的那样,我建议他拆除隧道,如果它是ifconfig用ip. 几年前我在 Centos 5 内核 2.6.25 上遇到过类似的问题,就我而言,它解决了这个问题,但我也在 IRC 中咨询网络人员和开发人员,为什么这是一个问题,因为我需要在生产环境中使用该路由并且需要安排停机时间来解决它。我记不清了,到目前为止还没有任何确凿的证据,但 Kuznetsov(内核源代码的原始大贡献者建议重建它,ip因为他看到了 . 的问题ifconfig。我希望这有助于 quanta 解决他的问题。

    题外话:所以,最重要的是,我自己使用了很多,ifconfig而且很难切换到ip,只要我继续处理旧的 Solaris 8 盒子和 bsd 盒子。

    • 1

相关问题

  • Linux 主机到主机迁移

  • 如何在 Linux 机器上找到有关硬件的详细信息?

  • 如何在 Linux 下监控每个进程的网络 I/O 使用情况?

  • 在 RHEL4 上修改 CUPS 中的现有打印机设置

  • 为本地网络中的名称解析添加自定义 dns 条目

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve