你好networking大师, 我有一个Linux(内核3.14)服务器,它作为消费电子设备(机顶盒-STB)场的TFTP,NFS和HTTP服务器。 这些设备使用TFTP从它们的内核启动,然后从我们的机器上的NFS服务器挂载它们的根FSs等。 现在,由于一个深奥的技术原因,我不打算在这里(只要相信我:),每个机顶盒必须在它自己的,物理上分开的局域网。 所以联网设置ATM的方式是: 该服务器有1个网卡用于访问世界其他地方。 它还为每个STB提供一个网卡 – 每个STB都连接到一个小型路由器,STB +一些其他设备连接到该路由器,形成一个局域网。 目前有3个机顶盒连接,局域网为172.16.50.0/24,172.16.51.0/24和172.16.52.0/24。 它的所有工作很好。 但是,我们有3个不同的局域网意味着同一个服务器必须从STB1访问172.16.50.1,从STB2访问172.16.51.1,从STB3访问172.16.52.1 – 这意味着我们有一个不同的环境每个机顶盒和每次我们说 – 上传新的RootFS用于STBs,我们需要手动编辑一些configuration文件,并把正确的IP服务器必须从这个特定的机顶盒访问。 不是很方便,容易出错! 这让我想到:如果我们简单地将这三个局域网configuration成完全相同的172.16.50.0/24,怎么办? 从机顶盒(和局域网中的其他设备)的angular度来看,一切都应该没问题,但是服务器的观点呢? Linux服务器可以有N个不同的以太网接口,所有的接口都configuration了相同的静态IP,但是每个接口都连接到一个物理上独立的LAN上?
当我使用route打印在我的计算机上定义的route ,大约需要5到20秒才能完成。 为什么需要这么多时间? 启用VPN后: $ time sudo route Kernel IP routing table (…) real 0m21.423s user 0m0.000s sys 0m0.012s 在没有VPN的情况下,这大约需要5秒钟,而计算机在这个时候还能做很多事情 。 我重复了几次测量,每次尝试的结果都非常相似。 我的机器是3.0.0内核的Ubuntu,但据我所知,在其他计算机上的路由工作方式相同。
我已经在Dell PowerEdge服务器上安装了Debian Squeeze。 但是,我正在configurationnetworking时遇到一些问题。 尽pipe我可以ping通networking中的机器,但我无法在networking之外(google.com)。 最奇怪的是,我可以从Debian软件库更新软件包,并安装它们! DNSparsing工作正常 – 通过host google.com进行validation。 我知道这应该是一些有关networkingconfiguration和/或防火墙的问题。 但是,我无法弄清楚这个问题。 我真的很感激任何帮助。 目录/ etc / network / interfaces # The loopback network interface auto lo iface lo inet loopback auto eth0 allow-hotplug eth0 #iface eth0 inet dhcp iface eth0 inet static address 10.14.85.244 netmask 255.255.0.0 network 10.14.0.0 gateway 10.14.1.2 /etc/resolv.conf的内容 domain sit.iitkgp search sit.iitkgp […]
我在机架空间有一个小型集群,其中一个专用networking的范围是192.168.3.0/24。 我想我的工人服务使用这个networking互相交谈,但不能弄清楚如何让docker允许。 我的理想configuration是一个单独的面向公众的容器,代理与工作人员的连接,然后可以与私人networking中的各种服务交谈来完成工作。 eth0 -> load balancer –> 192.168.3.3:80 –> 192.168.3.5:1234 (db) \-> 192.168.3.4:80 / \> 192.168.3.5:80/ 如果所有的工人都在同一台机器上,我可以通过docker run –link …来完成这个docker run –link …但是由于他们在不同的机器上,这是行不通的。 上例中的工作人员使用类似这样的命令启动: docker run -d -p $PRIVATE_IPV4:80:80 myworker 和数据库开始像这样: docker run -d -p $PRIVATE_IPV4:1234:1234 mydb 从主机我可以谈到每个容器,但每个容器不能路由到任何其他容器。 IE curl http://192.168.3.4可以从主机上运行,但不能从运行在主机上的容器运行。 在这种情况下,负载均衡器是nginx开始像这样: docker run -d -p $PUBLIC_IPV4:80:80 nginx nginx.conf upstream app { server 192.168.3.3:80; […]
使用Broadcom BCM5716,我在戴尔R310服务器上安装了新的CentOS 6。 机载网卡导致启动挂起由于某种原因。 Welcome to CentOS Linux Starting udev: udev: starting version 147 Boardcom NetXtreme II Gigabit Ethernet Driver bnx2 v2.0.23b (Feb 01, 2011) bnx2 0000:02:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 就是这样…然后它只是挂起/冻结。 如果我通过BIOS设置禁用网卡,CentOS就会启动。 我已经从Broadcom网站下载并安装了最新的驱动程序。 有任何想法吗?
这是我的司机信息。 ethtool -i ethXX driver: ixgbe version: 3.9.15-NAPI firmware-version: 0x800000a5 bus-info: 0000:04:00.0 supports-statistics: yes supports-test: yes supports-eeprom-access: yes supports-register-dump: yes 现在我有一个平均stream量为1 / 1.5 Gbps(每秒75k包)击中这个接口,我可以看到一个或多个ksoftirqd线程达到100%。 我试过启用rx-usecs / rx-frames选项,但没有任何改进。 有点延迟不是我的问题。 我只是想让ksoftirqd用法下降。 我看到rx-usecs的限制是1022,这是下一个中断应该被触发的usecs(这是我的理解,如果我错了,请纠正我)。 虽然它不能解决我的问题。 此驱动程序不支持rx-frame。 也不支持“adaptive-rx”。 下一步我应该看什么? 任何帮助是极大的赞赏。
我们有高stream量的网站服务器。 最近我们搬走了 2 x 4核心服务器(/ proc / cpuinfo中的8个核心),32 GB RAM,运行CentOS 5.x 2个4核心服务器(16个核心在/ proc / cpuinfo中),32 GB RAM,运行CentOS 6.3 运行nginx作为代理的服务器,mysql服务器和sphinx-search。 stream量很高,但是mysql和sphinx-search数据库相对较小,而且通常情况下所有的工作都非常快。 今天,服务器的负载平均值为100 ++。 看上面和sar,我们注意到(%sys)是非常高的 – 50到70%。 磁盘利用率不到1%。 我们尝试重新启动,但重新启动后存在问题。 在任何时候,服务器至less有3-4 GB的可用内存。 只有dmesg显示的消息是“端口80上可能发生SYN洪泛。发送cookie”。 这里是sar的片段 11:00:01 CPU %user %nice %system %iowait %steal %idle 11:10:01 all 21.60 0.00 66.38 0.03 0.00 11.99 我们知道这是交通问题,但是我们不知道如何着手未来以及在哪里检查解决scheme。 有没有一种方法可以find那些“66.38%”的确切位置。 任何build议,将不胜感激。 更新:今天的平均负载为“正常”,“sys%”也可以〜4%。 但是今天的交通比昨天less了20-30%。 这让我想到昨天的问题是因为TCP的一些内核设置。
我有一个运行TCP连接的游戏服务器。 服务器随机断开用户。 我认为它与服务器的TCP设置有关。 在本地开发环境中,编写代码可以处理超过8000个并发用户,而不会有任何断开或错误(在本地主机上)。 但在实际部署的Centos 5 64位服务器中,服务器独立于并发tcp连接数量创build这些断开连接。 服务器似乎无法处理吞吐量。 netstat -s -t IcmpMsg: InType0: 31 InType3: 87717 InType4: 699 InType5: 2 InType8: 1023781 InType11: 7211 OutType0: 1023781 OutType3: 603 Tcp: 8612766 active connections openings 14255236 passive connection openings 12174 failed connection attempts 319225 connection resets received 723 connections established 6351090913 segments received 6180297746 segments send out […]
我试图在具有两个网关的Linux路由器上负载均衡来自内部局域网的stream量。 最初我去iproute执行没有按预期平衡负载,原因是路由被caching。 现在我正在使用iptables来标记使用CONNMARK的每个新连接,然后添加规则以通过不同的网关路由这些标记的连接。 Eth0 – LAN,Eth1 – ISP1,Eth2 – ISP2 以下是我正在使用的脚本, #!/bin/bash echo 1 >| /proc/sys/net/ipv4/ip_forward echo 0 >| /proc/sys/net/ipv4/conf/all/rp_filter # flush all iptables entries iptables -t filter -F iptables -t filter -X iptables -t nat -F iptables -t nat -X iptables -t mangle -F iptables -t mangle -X iptables -t filter -P INPUT ACCEPT […]
如何查询我的Linux机器上的本地ARPcaching,以查看上次何时学习和/或更新了特定的ARP条目?