这是我几年来一直忽略的一个问题。 我有一台运行linux 3.16.0-4-amd64的Debian稳定服务器。 启动后几分钟到几个小时,服务器将失去出站networking连接,并停止响应SSH和ping。 打开SSH连接挂起。 我有3台基于KVM的虚拟机在这台主机上运行,而且他们可以从字面上运行多年,没有任何连接问题。 我也可以重新启动它们。 /etc/network/interfaces : auto lo iface lo inet loopback iface eth0 inet manual auto br0 iface br0 inet static address xxx.xxx.xxx.6 netmask 255.255.255.0 network xxx.xxx.xxx.0 broadcast xxx.xxx.xxx.255 gateway xxx.xxx.xxx.1 bridge_ports eth0 bridge_stp off bridge_maxwait 0 bridge_fd 0 该杂志没有显示任何有趣的。 其中唯一与networking相关的消息如下,通常在启动后10-15分钟,但可能在断开连接前数小时: kernel: br0: Multicast hash table maximum of 512 reached, disabling […]
好的,在过去的几天里,这已经让我陷入了一个循环。 信息 我有Mosquitto MQTT 1.4.10,启用了WebSocket并在Ubuntu Server 14.4上运行。 我局域网上的任何客户端都可以使用端口1883(mqtt)和9001(websockets)连接到代理,一切工作正常。 现在,我的DD-WRT路由器上还有一个公共IP地址和设置端口转发,以将1883和9001路由到服务器的地址。 我已禁用我的防火墙( sudo ufw禁用 ),并确认它被禁用。 问题 我把我的手机连接到运行到我本地WiFi的OwnTracks。 我input端口1883的MQTT服务器IP,它的工作原理。 我input端口1883的公共IP,它的工作原理。 然后我断开我的本地WiFi,所以我只是使用我的手机networking。 我尝试使用我的公共IP和端口1883再次连接,它不起作用。 检查我看到的日志: New connection from <<external_ip>> on port 1883 Socket error on client <unknown>, disconnecting 检查我的configuration文件,并在那里看起来很好: pid_file /var/run/mosquitto.pid persistence true persistence_location /var/lib/mosquitto/ log_dest file /var/log/mosquitto/mosquitto.log log_type all include_dir /etc/mosquitto/conf.d listener 1883 protocol mqtt listener 9001 127.0.0.1 protocol […]
如果这个问题没有意义,请原谅我! 可以同时使用的sockets数目是否有任何理论上的限制? 根据我的理解,套接字绑定的端口和端口可以有一个高达65535的值,这是套接字计数的理论限制因素吗?
我正在学习排队纪律,作为调整我们的碳-c中继群集networking堆栈的一部分。 我的理解是,排队规则层的存在仅仅是为了降低延迟,并为不同types的networking数据包提供公平性。 如果没有这层,驱动程序队列将被用作简单的FIFO,这对于延迟不是优先级的高networking负载来说是很好的。 我正在运行一个碳C中继群集,这意味着我不在乎延迟 – 我关心的是确保所有携带指标数据的数据包都被处理,并且没有被丢弃。 所以,我应该能够禁用排队纪律层,并调整驱动程序队列(增加驱动程序队列和套接字缓冲区以适应networking负载)。 那是对的吗? 有没有办法来禁用排队纪律层?
我试图通过查看我的Linux服务器的KPI来创build一个简单的exception警报检测。 我想知道如果看到丢包(packet_in和/或packet_out),我应该在什么时候报警。 如果我把总共丢包数据包/接收数据包的百分比(对发送的数据包做同样的处理),然后发出警报,如果我观察到20%或更多的数据包丢弃,是否有意义? 我知道丢弃数据包(收到)可能是正常的,不应该被视为与服务器的问题,但我认为值得标记报告更大的问题与本地子网或连接的交换机。 但是,发送数据包的错误可能表示NIC卡出现问题,与连接的设备速度协商问题。 因此,标记一个丢弃的数据包%> = 20是公平的吗? 将非常感谢专家的回应和一些有用的指针,进一步微调报告。
我使用的是Ubuntu 10.10 我有一个名为“备份”的本地备份用户。 🙂 我想给这个用户一个1Mbit的带宽。 无论哪个软件想要连接到networking。 此解决scheme限制: iptables -t mangle -A OUTPUT -p tcp -m owner –uid-owner 1001 -j MARK –set-mark 12 iptables -t mangle -A POSTROUTING -p tcp -m owner –uid-owner 1001 -j MARK –set-mark 12 tc qdisc del dev eth0 root tc qdisc add dev eth0 root handle 2 htb default 1 tc […]
我的网卡驱动程序不支持H / W LRO,但在驱动程序中模拟LRO。 现在可以使用'ethtool -k ethx gro off'来禁用GRO(这是一个linuxnetworking堆栈function)。 这也可以用于LRO吗? 我知道大多数发行版有LRO或GRO。 所以,如果使用ethtool禁用LRO,是否意味着closures了我在驱动程序中执行的H / W LROfunction或LRO仿真function?
我想连接到一个windows pptp vpn服务器,该服务器只接受具有CA证书的连接。 从Windows即时可以做到这一点(因为它的窗口当然和本机支持),但从我的Ubuntu 10.04即时通讯无法设置VPN使用证书进行身份validation。 任何帮助/提示?
我有一个运行CentOS 5.3(Final;内核版本2.6.18)的服务器,我需要添加第二个网卡,最初暂时,但最终永久。 我不熟悉在Linux下安装驱动程序,只使用system-config-network-tui和编辑configuration文件(我们没有安装X版本)来configuration内置的以太网适配器。 我发现一些说明,说苹果的USB以太网适配器在Linux下运行良好 。 我们是一家苹果商店,所以我们有足够的资源,而且短期内我们会为这台服务器寻找一个更好的PCI-X以太网适配器。 因此,我下载并安装( make和make install ) 推荐的AX88178驱动程序(Linux 2.6.38;适用于“Android 1.x / 2.x / 3.0,Linux kernel 2.6.14及更高版本”)的相应版本 。 插入Apple USB以太网适配器后,它显示在lsusb的结果中,但在运行system-config-network-tui时没有显示在选项中。 编译和安装的.ko文件是“asix.ko”,如果我运行lsmod | grep asix lsmod | grep asix ,我得到以下内容: asix 82176 0 mii 38849 1 asix 那么,内核模块是否正确安装并加载? 我需要别名“eth2”(“eth0”是内置以太网和“eth1”在system-config-network-tui列为“skge”,但绝对不是我刚插入的)“asix “在/etc/modules.conf在这里指出 ? 我可能会错过哪些其他步骤? 注意:当我运行ifconfig -a时,我现在看到一个“dev23116”networking接口,在安装驱动程序之前, ifconfig -a接口并不存在。 那是USB以太网适配器吗? 如果是这样,我的别名或使用它作为接口的设备在system-config-network-tui ?
目前,我们刚刚进入一个新的数据中心,networking性能出现非常大的问题,老实说,我无所适从, 所以我正在寻找一些灵感。 DataCenter有一个我无法访问的托pipenetworking,但是我们负责pipe理其中的主机。 一般信息 在DataCenter环境(Dell R210s和R710s)中,我们有十一台主机(全是Debian Squeeze)。 每个主机都有两个活动接口,它们以bond0主动/被动设置(eth0和eth1)设置。 主机上的networking堆栈大部分都是按照默认的Debian设置,我们没有尝试性能优化或类似的运行。 这个问题在十一台主机上是相同/可复制的,但是只适用于跨越networking边界的stream量(即不适用于内部主机本身之间的stream量)。 DataCenter支持团队已经将笔记本电脑挂接到与其他主机所在的交换机相同的交换机上,并且无法重新创build问题; 因此有说它必须是内部主机本身的configuration问题,而不是networking的问题。 问题 在出站传输中,传输以大窗口大小快速开始,但在远程服务器上,数据包乱序接收,这又会导致重复的ACK被发送出去。 在很短的时间内,窗口大小已经大量缩减(稳定在4万到6万个字节之间),传输速度从每秒兆字节降低到〜200-300KB /秒。 在入站传输中,一切都是“好的”(其中“良好”被定义为2MB /秒的持续传输速率)。 所以,从数据中心传输一个20MB文件的SCP将以〜2.2MB /秒的速度启动,但是会下降到〜275KB /秒,总共需要01m14s,而同一个20MB文件传输到数据中心的SCP将启动以每秒2.2MB的速度在2.0-2.2MB / sec之间保持稳定,并在00分09秒完成。 我所尝试的 我已经validation了主机和networking硬件之间没有任何协商混淆 – 所有链路被所有方看作1GbE全双工。 我试过禁用窗口缩放。 我已经尝试从他们的debian默认缩小net.ipv4.tcp_rmem和net.ipv4.tcp_wmem。 我试过禁用bond0,只是通过简单的eth0接口传输文件。 我尝试转移到多个遥远的外部终点; 都共享相同的问题(即我相信,问题是在数据中心的一端,而不是在另一端)。 我运行mtr检查路由到多个外部端点(所有我可以复制问题) – 路由是不同的(在几跳之后根本不相似),并且其中一些显示一定程度的丢包; 在所有端点(具有不同的路由和不同的分组丢失水平)之间的行为如此相似,这一事实使我相信问题不是来自内部DC超过三或四跳的问题(因为这些都是每条路由的普通跳数 – 而且这些跳数不会显示任何明显的丢包水平)。 以下是入站/出站stream量的stream量分析(从DC中的主机angular度)。 正如你所看到的那样,(非常)正常的重复ACK使传输速度远远低于应有的速度。 另请注意,在入站传输中,不会出现同样的问题。 tshark -r outbound-bond0.pcap -q -z io,stat,1,\ "COUNT(tcp.analysis.retransmission) tcp.analysis.retransmission",\ "COUNT(tcp.analysis.duplicate_ack)tcp.analysis.duplicate_ack",\ "COUNT(tcp.analysis.lost_segment) tcp.analysis.lost_segment",\ "COUNT(tcp.analysis.fast_retransmission) tcp.analysis.fast_retransmission" =================================================================== […]