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
    • 最新
    • 标签
主页 / user-218965

BaseZen's questions

Martin Hope
BaseZen
Asked: 2020-06-17 13:17:29 +0800 CST

企业级硬件上直接千兆以太网链路的高 ping 延迟

  • 1

最终编辑 7/7多个电缆、端口和设备替换已将其范围缩小到 Comcast 调制解调器及其所有 8 个以太网端口。鉴于,正如评论所说,这是一个封闭的设备,不太可能获得太多真实信息,我们可能永远不会发现,但我仍然会发布该决议作为答案。

(编辑 1/6 动机;潜在的实际问题)基于用户对电话会议问题的投诉,我想消除所有可能的原因。在验证了从笔记本电脑到服务器的完美 LAN 和 WiFi 连接,然后看到非常不均匀的端到端 ping 延迟——通常远高于 100 毫秒的建议限制——按照此处的指示,使用 Google Meet 服务器,我回溯到延迟的来源。(当然,这不一定是 Google Meet 延迟的根本原因,但我需要将其排除为可能的原因。)

事实证明,不均匀和高延迟来自 Sophos UTM 9 SG125(固件:9.703-3)与 Comcast CGA4341COM 千兆调制解调器(制造商:Technicolor;硬件版本:2.3;芯片组:Broadcom)之间的直接链接。

链路两端都报告千兆连接。Speedtest 可speedtest.xfinity.com通过硬连线的局域网服务器提供 400Mbps 范围的结果。(编辑 2/6 问题的附加证据这似乎很好,除了当同一服务器直接连接到调制解调器时,完全切断路由器和 LAN 的其余部分,吞吐量为 930Mbps。)

在 Sophos 上使用 10 英尺 Cat5e 电缆直接连接调制解调器的 SSH cmd 线路上进行长时间测试后:

—— xx.xx.xx.134 ping statistics ---
756 packets transmitted, 756 received, 0% packet loss, time 755277ms
rtt min/avg/max/mdev = 0.162/21.789/199.543/34.605 ms

长长的 ping 非常密集地穿插:

64 bytes from xx.xx.xx.134: icmp_seq=1 ttl=64 time=58.2 ms
64 bytes from xx.xx.xx.134: icmp_seq=2 ttl=64 time=0.645 ms
64 bytes from xx.xx.xx.134: icmp_seq=3 ttl=64 time=72.4 ms

整天尝试这个没有任何改变。调制解调器的所有无关功能都被禁用:端口转发、端口触发、防火墙、MAC 访问控制、dhcp、wifi 等。

(编辑 3/6 回复:可能导致延迟的流量负载)这也发生在半夜,因此与流量无关。当链路利用率低于 1% 时,尽管 ping 可能不准确,但优先级不应该发挥作用。

(编辑 4/6 回复:ICMP 的可能低优先级)traceroute,使用 UDP,显示相同的延迟模式:

traceroute -q 10 -w 1 10.1.10.1
traceroute to 10.1.10.1 (10.1.10.1), 30 hops max, 40 byte packets using UDP
 1  10.1.10.1 (10.1.10.1)  71.784 ms   70.684 ms * * *   66.310 ms * * * *
traceroute -q 10 -w 1 10.1.10.1
traceroute to 10.1.10.1 (10.1.10.1), 30 hops max, 40 byte packets using UDP
 1  10.1.10.1 (10.1.10.1)  1.218 ms   1.151 ms * * * * * * * *
traceroute -q 10 -w 1 10.1.10.1
traceroute to 10.1.10.1 (10.1.10.1), 30 hops max, 40 byte packets using UDP
 1  10.1.10.1 (10.1.10.1)  61.156 ms * * * *   55.497 ms   54.370 ms * * *

编辑 5/6 回复:此 ISP 和调制解调器的正常行为在不同的客户站点,相同的调制解调器硬件连接到 65 美元的 EdgeRouter X,我从路由器看到,正常:

--- 10.1.10.1 ping statistics ---
60 packets transmitted, 60 received, 0% packet loss, time 59398ms
rtt min/avg/max/mdev = 0.278/1.201/2.175/0.554 ms

同样,在第二个站点发送了 100 个 traceroute UDP 数据包后,最慢的是 3.3 毫秒。

(编辑 6/6 回复:一般情况下可能正常)在任何调制解调器和路由器之间,在与多家供应商合作的低端和高端宽带工作中,我从未见过这种延迟模式。我没有打折 Sophos 方面;当我可以通过直接连接到不同设备的情况下到达现场时,我会报告。

在 Sophos 上,没有数据包错误:

router:/var/log# ifconfig eth1
eth1      Link encap:Ethernet  HWaddr 7C:xx:xx:xx:xx:94  
          inet addr:96.xx.xx.129  Bcast:96.xx.xx.135  Mask:255.255.255.248
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:300119356 errors:0 dropped:0 overruns:0 frame:0
          TX packets:243077712 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:264200277517 (251961.0 Mb)  TX bytes:197347533783 (188205.2 Mb)

在 eth0 上,Sophos 以典型的 0.1-0.2ms 非常稳定的延迟 ping 局域网上的服务器。

router:/# ping 192.168.1.5
PING 192.168.1.5 (192.168.1.5) 56(84) bytes of data.
64 bytes from 192.168.1.5: icmp_seq=1 ttl=128 time=0.198 ms
64 bytes from 192.168.1.5: icmp_seq=2 ttl=128 time=0.128 ms

Sophos 上根本没有加载(CPU 或内存或磁盘),日志中也没有任何异常,dmesg. .

lshw报告:

      *-network:1
            description: Ethernet interface
            product: Ethernet Connection X553 1GbE
            vendor: Intel Corporation
            physical id: 0.1
            bus info: pci@0000:0b:00.1
            logical name: eth1
            version: 11
            serial: 7c:xx:xx:xx:xx:94
            size: 1Gbit/s
            capacity: 1Gbit/s
            width: 64 bits
            clock: 33MHz
            capabilities: pm msi msix pciexpress bus_master cap_list rom ethernet physical tp 10bt-fd 100bt-fd 1000bt-fd autonegotiation
            configuration: autonegotiation=on broadcast=yes driver=ixgbe driverversion=5.2.4 duplex=full firmware=0x80000878 ip=96.86.73.129 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
            resources: irq:17 memory:dfa00000-dfbfffff memory:dfe00000-dfe03fff memory:dc500000-dc57ffff

在搜索 90 天的日志时,调制解调器几乎没有任何报告。只有今天:

FW.WANATTACK DROP , 34 Attempts, 2020/6/16 15:58:01
Firewall Blocked

调制解调器上的详细软件统计信息:

eMTA & DOCSIS Software Version: CM DOCSIS Application - Prod_18.1_d31 & MTA Application - Prod_18.1
Software Image Name: CGA4131COM_3.12p12s1_PROD_sey
Advanced Services: CGA4131COM
Packet Cable: 2.0
router ping gigabit-ethernet latency modem
  • 1 个回答
  • 1205 Views
Martin Hope
BaseZen
Asked: 2018-05-01 10:18:36 +0800 CST

Windows Server 2012 DNS:A 型查询返回到自己的接口的奇怪超时故障模式

  • 1

我有一台 Active Directory Windows 2012(R2 标准版,6.3.9600)服务器,它已经运行多年,没有任何问题。突然之间,我有以下故障模式。从下面的证据可以明显看出,网络基础设施——数据包、路由、防火墙——不是问题。我还尝试过多次重新启动 DNS 服务器,刷新和重新加载区域,并对其进行健全性检查。

这是服务器上的 PowerShell 与自己的物理网络接口通信:

Server> Resolve-DNSName printer.example.com -Server 10.1.1.1 -DNSOnly -Type A
Resolve-DNSName : printer.thecoop.com : This operation returned because the timeout period expired
At line:1 char:1
+ Resolve-DNSName printer.example.com -Server 10.1.1.1 -DNSOnly -Type A
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationTimeout: (printer.example.com:String) [Resolve-DnsName], Win32Exception
    + FullyQualifiedErrorId : ERROR_TIMEOUT,Microsoft.DnsClient.Commands.ResolveDnsName

没有意义的是,当从LAN 上的其他任何地方或通过 VPN发起请求时,确切的查询工作正常。

此外,如果我们切换到 ALL 类型,它也可以正常工作(MX 记录也很好,例如 'example.com'):

Server> Resolve-DNSName printer.example.com -Server 10.1.1.1 -DNSOnly -Type ALL

Name                                 Type   TTL   Section    IPAddress
----                                 ----   ---   -------    ---------
printer.example.com                    A    3600  Answer     10.1.1.202

最后,切换到在 localhost 查询也可以正常工作:

Server> Resolve-DNSName printer.example.com -Server 127.0.0.1 -DNSOnly -Type A

Name                                   Type   TTL   Section    IPAddress
----                                   ----   ---   -------    ---------
printer.example.com                    A      3600  Answer     10.1.1.202

DNS 数据包捕获

启用数据包调试,我看到了,但大多不明白:

4/30/2018 2:27:41 PM 1D30 PACKET  000000764976A220 UDP Rcv 10.1.1.1     81ea   Q [0001   D   NOERROR] A      (15)printer(7)example(3)com(0)

4/30/2018 2:27:41 PM 1D30 PACKET  000000764976A220 UDP Snd 10.1.1.1     81ea R Q [8085 A DR  NOERROR] A      (15)printer(7)example(3)com(0)

4/30/2018 2:27:42 PM 1D30 PACKET  000000764ACB60A0 UDP Rcv 10.1.1.1     81ea   Q [0001   D   NOERROR] A      (15)printer(7)example(3)com(0)

4/30/2018 2:27:42 PM 1D30 PACKET  000000764ACB60A0 UDP Snd 10.1.1.1     81ea R Q [8085 A DR  NOERROR] A      (15)printer(7)example(3)com(0)

4/30/2018 2:27:43 PM 1D30 PACKET  00000076482420A0 UDP Rcv 10.1.1.1     81ea   Q [0001   D   NOERROR] A      (15)printer(7)example(3)com(0)

4/30/2018 2:27:43 PM 1D30 PACKET  00000076482420A0 UDP Snd 10.1.1.1     81ea R Q [8085 A DR  NOERROR] A      (15)printer(7)example(3)com(0)
domain-name-system
  • 1 个回答
  • 720 Views
Martin Hope
BaseZen
Asked: 2015-03-26 13:29:54 +0800 CST

Amazon EC2:OpenVPN 服务器不会将桥接数据包从客户端路由到 VPC 子网

  • 4

我在 Amazon EC2 VPC 的 Linux 服务器上设置了桥接 OpenVPN。(花了几个小时在文档上,阅读类似的问题,在这里,openVPN 论坛,还没有运气。)

桥接接口已启动并包含两个子接口:

# brctl show
bridge name     bridge id               STP enabled     interfaces
br0             8000.0e7c15e787b0       no              eth0
                                                        tap0

VPN服务器上的路由显然没问题;我可以通过 SSH 连接、ping 通、响应来自客户端的 VPN 请求:

# netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         10.0.0.1        0.0.0.0         UG        0 0          0 br0
10.0.0.0        0.0.0.0         255.255.0.0     U         0 0          0 br0

我可以从 Windows 和 Mac 客户端 ping 到 VPN 服务器的 IP,但不能 ping 到 VPC 子网上的任何其他 IP。(那些其他 IP 没问题;它们可以从 VPN 服务器 ping 通。)

当我在VPN 服务器tcpdump上的网桥接口上时,它会看到来自 Windows 客户端的“ARP​​ who-has”请求。但是它们不会进入 VPC 子网!在目标 IP 上看不到 ARP 到达。Windows arp 缓存仍未填充。(10.0.0.128 是 Windows 客户端;10.0.0.58 是 VPN 服务器;10.0.0.180 是子网上的另一个 IP;下面的输出来自 VPN 服务器。)br0tcpdump

root@vpn:# tcpdump -i br0 arp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on br0, link-type EN10MB (Ethernet), capture size 65535 bytes
21:00:21.092367 ARP, Request who-has 10.0.0.180 tell 10.0.0.128, length 28

[蟋蟀]

我已禁用源/目标。检查 VPN 服务器唯一网络接口上的 EC2 控制台。

我已经按照桥接 HOWTO 中的建议设置了 IP 表,并且通常完全按照这些说明进行操作。

# iptables -L INPUT -v
Chain INPUT (policy ACCEPT 9 packets, 1008 bytes)
 pkts bytes target     prot opt in     out     source               destination
   38 12464 ACCEPT     all  --  tap0   any     anywhere             anywhere
10447 1297K ACCEPT     all  --  br0    any     anywhere             anywhere

# iptables -L FORWARD -v
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
  918  167K ACCEPT     all  --  br0    any     anywhere             anywhere

https://openvpn.net/index.php/open-source/documentation/miscellaneous/76-ethernet-bridging.html

我认为我不需要转储完整的配置,因为显然很多工作都在起作用:身份验证、证书、压缩、地址池、连接设置。Amazon VPC 是否只是拒绝转发数据包,而我真的应该在一个稍微不那么虚拟的云上来执行此操作?

第二天的更多实验:VPC 显然不像真正的第 2 层子网。特别是,ARPwho-has广播实际上并不广播!当我从 .180 ping 一个不存在的 IP(比如 0.5)时,.58 看不到请求。如果已通过管理控制台/API 在 VPC 中配置了.5,则 VPC 显然正在优化 ARP 广播并将其仅发送到 .5 。保留tcpdump -vv -i eth0 arp一段时间仅显示所有主机的主机和网关之间的流量。

此外,ping 子网上的广播地址根本不起作用。这得到了 Amazon VPN 常见问题的支持。

因此 VPC 可能拒绝识别 .129 的未知 MAC 地址,因为它不存在于它自己的“虚拟以太网交换机”中。我可能会在一周左右的时间内将此作为答案。要使用您自己的 VPN 扩展 VPC,它必须通过正式的“VPC 网关”,该网关仅设计为由专用硬件路由器和静态 IP 支持的公司 Intranet 的扩展,而不是漫游笔记本电脑场景 I'米的目标。

linux
  • 1 个回答
  • 2395 Views

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