我(代表一个客户,无论如何)在Linux上访问在Hyper-V上托pipe的多播NLB集群时遇到一些麻烦(等待更多关于哪个版本的信息,但是我不认为这个版本太相关,因为这似乎客户端问题)。 NLB集群中有两个成员。 每个模块都有自己的MAC地址(01:xx:xx:xx:xx:xx),正如组播模式中常见的那样。 它们同时也响应集群(03:xx:xx:xx:xx:xx)的共享组播MAC地址,这是多播NLB似乎如何工作的。 从Windows机器Ping群集IP工作正常,控制台显示您期望看到的输出(发送4,收到4等)。 如果你ping Wireshark,你可以看到stream程如下所示: ClientIP-ClientMAC -> ClusterIP-ClusterMAC : ICMP echo request ClusterIP-Node1MAC -> ClientIP-ClientMAC : ICMP echo response ClusterIP-Node2MAC -> ClientIP-ClientMAC : ICMP echo response (duplicate response from the second node) ClientIP-ClientMAC -> ClusterIP-ClusterMAC : ICMP destination unreachable (seems to be the client discarding the second ping response, and using the ClusterMAC […]
我们有一个问题,许多客户端(所有Linux Ubuntu)有时无法通过SSH连接到远程服务器。 如果发生问题,Windows客户端没有这个问题,可以连接就好了。 我发现这个问题有一个类似的问题: 为什么服务器不会发送SYN / ACK数据包来响应SYN数据包 禁用服务器上的TCP时间戳确实可以解决问题,但是我想知道真正的问题是什么。 我不明白为什么这会导致任何问题,绝对不是在build立连接时。 使用Wireshark时,我发现Windows客户端使用8192的窗口大小,而Linux客户端使用29200的窗口大小.Windows客户端接收SYN_ACK,而Linux客户端不接收。 是否有可能这个较高的初始窗口大小负责不发送服务器的SYN_ACK? 我不能拿出一个明智的解释,为什么它可能会导致给定的问题,但由于它是唯一的(在我看来)的差异,它看起来是这样的。 我错过了什么吗? ***编辑经过更多的search,思考和一些巫术魔法,我想我可能会拿出一个合理的解释。 确实需要一些假设和具体条件,但我相信在这种特殊情况下这些可能是可能的。 这两个用户都在同一个NAT设备后面(在我们的例子中是一个Fortigate防火墙)。 这个防火墙将把它的外部接口/ IP上的本地端口分配给每个NAT连接。 如果该端口已经被其他用户使用,则被跳过。 如果连接closures,端口将被释放并返回到NAT池。 如果该端口被分配给另一个用户,但服务器仍然有连接的某个logging(TIME_WAIT,最终的FIN / ACK没有收到),并且数据包的时间戳低于以前的连接数据包,默默地被偷听。 好的,如果在那里有很多,但是… – 这两个用户正在同一个网站上开发,所以他们将与同一个远程服务器进行大量连接 – 防火墙(Fortigate)显然保留了一个顺序计数器每个源IP / destinationIP / destinationPort的NAT端口。 如果两个用户的计数器接近彼此,考虑到两个目的地IP作为端口是相同的,那么与该服务器的两个连接发生这种“冲突”的可能性并非不可能。 这就可以解释为什么这个问题只是零星地发生。 这个理论唯一的问题是,我无法在服务器端find任何证据。 在TIME_WAIT或类似的东西中没有任何连接,我假设一旦它们从netstat输出中消失,服务器就已经忘记了它们。 我相信最初的窗口大小在这个方面并不起作用,所以我正在打击这个名单中的一个。
从我读到的,由于TOE(或GSO,LSO,LRO ..),tcp协议操作的某些部分可以从内核卸载到网卡驱动程序。 我的目标是find一个给定的套接字的一部分处理卸载。 它似乎是在界面层面上治理,我们可以看到是否允许卸载 # ethotool -k eth0 但是,我发现很难看到给定套接字的状态,特别是如果ACK数据包pipe理已被卸载 na_netstat似乎能够显示信息,但不是在centos 6.5中可用的netstat版本。 我猜可能是: head -n1 < /proc/net/tcp ; grep -a 3952364802 /proc/net/tcp 允许我查找给定套接字的所有状态信息(如果3952364802是套接字号),但是我不知道如何解码它的输出。 问题:如何看到卸载给定套接字的状态? 奖金问题:我在哪里可以find与卸载激活有关的启发式描述。
我想build立一个DHCP服务器,通常中继到一个中央站点,但有一个地址池分发,如果中央站点的链接出现故障。 我在Debian上使用isc dhcp服务器,但isc服务器和中继代理是单独的程序,所以看起来服务和中继不能在一个二进制/configuration中完成。 这个设置是一个总部/〜10个分支networking,需要在总部运行主服务器的DHCP服务器,这样我们就可以查看日志并获取所有客户端的信息。 即使与总部的连接断开,我也希望分支机构获得IP地址,因为他们仍然可以访问互联网,如果有的话可以访问某些服务。 我目前的想法是,我需要两个设备在每个分支,一个运行dhcp中继,另一个运行非权威的dhcp服务器,租约时间很短。 (或试图在一台机器上运行,并绑定到不同的IP地址?)否则,我需要每个站点的权威服务器,并将日志信息发送到总部,但我不想走下去。 所有的DHCP服务器和中继都通过可靠的方式进行pipe理。 我怎样才能最简单地build立一个网站与DHCP中继,但如果主服务器没有响应与备用池?
Debian服务器设置(wheezy) 1 – eth0 – 连接到INTERNET 1 – eth1 – LAN 1(networking1:192.168.100.0/24) 1 – wlan0 – 接入点(networking2:192.168.200.0/24) 的/ etc /networking/接口 auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp auto eth1 iface eth1 inet static address 192.168.100.1 network 192.168.100.0 netmask 255.255.255.0 broadcast 192.168.100.255 gateway 192.168.100.1 auto wlan0 iface eth0 inet static address […]
我有以下设置涉及两个KVM主机和每个虚拟机的客人。 客人通过[192.168.216.0/24]在两台主机上相互通信。 [192.168.216.42]通过交叉电缆连接到[192.168.216.41]。 [192.168.216.0/24]地址之间的stream量不应该逃到局域网上。 但是,我想从[192.168.216.25] ping [xyA2]: ISP ethx[xyA2/30] >—–< eth0[xyA3/30] | ISP GWAY | eth1[xyz1/24] >———-< | GWAY | | br0[xyz42/24] >———————————< | KVM2 | br0[xyz41/24] >—–< | KVM1 ~ br1[192.168.216.42] >—–X—–< br1[192.168.216.41] | KVM2 KVM1 | | | | >—–< eth1[192.168.216.21] | | >—–< eth1[192.168.216.25] | | eth1[192.168.216.221] >—–< | eth1[192.168.216.223] >—–< | […]
在CentOS-6.6服务器上,基于策略的路由遇到了一些困难。 我有一个安装程序,我需要通过某个网关( 10.4.20.5 )在VPN隧道后172.25.0.0/16所有来源于172.25.0.0/16 172.24.0.0/16和一些XXX.155.106.50数据包。 我只是做我一直做的事情。 1)我在/ etc / iproute2 / rt_tables中定义了zone2表: 255 local 254 main 253 default 0 unspec 25 zone2 2)我添加了一些规则,所以这里是我得到的答复ip rule show : 0: from all lookup local 32762: from all to 172.25.0.0/16 lookup zone2 32763: from 172.25.0.0/16 lookup zone2 32766: from all lookup main 32767: from all lookup default 3)最后,我添加了一些路由到表,所以在答复ip route […]
我有一个服务器作为短信网关(使用kannel),并有多个客户端连接到它,但最近这一个客户端与他们的特定IP说,他们不能发送到我的服务器,所以我检查了http访问日志和它表明,该客户端获得低于错误 148:xx.xx.xx.xx – – [29/Jun/2015:18:08:04 +0800] "-" 408 – 296:xx.xx.xx.xx – – [29/Jun/2015:16:41:41 +0800] "-" 408 – 659:xx.xx.xx.xx – – [29/Jun/2015:16:57:22 +0800] "-" 408 – 983:xx.xx.xx.xx – – [29/Jun/2015:17:06:59 +0800] "-" 408 – 1143:xx.xx.xx.xx – – [29/Jun/2015:17:14:20 +0800] "-" 408 – 所以我打开了tcpdump来检查是否是我们的问题或客户端,这是我从我们的服务器和客户端服务器看到的。 我环顾四周,提到我的服务器没有收到ACK。 我觉得这很奇怪,因为其他客户端连接没有问题。 服务器位于防火墙后面(Sonicwall),但我没有看到防火墙丢弃任何数据包,netstat -i显示丢弃的数据包。 我不熟悉networking,我非常迷茫,但非常感激。 我可以发布任何更多的细节需要。 谢谢!
我无法启动戴尔Poweredge 2950的第二个网卡,安装了OMSA,网卡是BCM5708C,操作系统Centos 6.7版本。 第一张卡正确 [root@alfa ~]# ifup eth1 RTNETLINK answers: Device or resource busy Failed to bring up eth1. – [root@alfa ~]# uname -a Linux alfa.uskonnen.net 2.6.32-573.3.1.el6.x86_64 #1 SMP Thu Aug 13 22:55:16 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux – [root@alfa ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth1 DEVICE=eth1 BOOTPROTO=static ONBOOT=yes NM_CONTROLLED=no UUID="be0b2777-dc5c-421b-b3be-d0f5664f603f" IPADDR=123.123.123.49 NETMASK=255.255.255.224 DNS1=1.1.1.1 DNS2=2.2.2.2.2 GATEWAY=123.123.123.62 TYPE=Ethernet […]
我有一个运行NGINX&Redis的分析跟踪Linux服务器(EC2上的Ubuntu)(这个项目 – https://github.com/FTBpro/count-von-count ) 当我浏览NGINX日志时,发现与其他指标相比,stream量降低了30%,NGINX错误日志没有显示任何可疑的情况。 我的猜测是,在stream量窥视下,服务器/机器只是无法处理所有传入的stream量。 我虽然关于调整机器和NGINX以获得更好的性能,但在这之前,我想validation我的理论, 所以我想知道: 1)有没有办法看到操作系统和NGINX之间是否有一些stream量被“丢弃”(即机器可以处理stream量,但是NGINX太忙)? 2)有没有办法查看机器本身是否无法处理所有的stream量? 谢谢。 ————————–到目前为止的结论——————— —— 1)这个博客文章非常好地解释了NGINX的监测。 基本上它使用Seva Kobylin在他的答案中推荐的存根模块。 我也开始免费试用DataDogHQ,它提供了一个非常好的监控和可视化简单的解决scheme。 2)不幸的是,上面还是没有回答我的第二个问题,但至less我在第一部分有一些可见性,所以这是:-)