Articles of linux networking

在RHEL上使用udev获取mac地址?

不知怎的,我的服务器上的eth0和eth1的ifcfg脚本在其中具有相同的HWAddr: # Intel Corporation 82571EB Gigabit Ethernet Controller DEVICE=eth0 SLAVE=yes MASTER=bond0 HWADDR=00:1b:21:ac:ae:d2 ONBOOT=no BOOTPROTO=none TYPE=Ethernet # Intel Corporation 82571EB Gigabit Ethernet Controller DEVICE=eth1 SLAVE=yes MASTER=bond0 HWADDR=00:1b:21:ac:ae:d2 ONBOOT=no BOOTPROTO=none TYPE=Ethernet 我如何使用udev从硬件获得正确的MAC?

基于私有目标IP地址的Linux收入过滤

我试图在我的OpenWRT框中设置一个QoS脚本,以便来自Internet的stream量被分类为低prio类和高prio类。 stream量分类的标准是在家庭networking中的目的IP地址,即私有IP地址。 特别是如果stream量的IP = 192.168.1.22它应该去一个低prio,否则高prio。 为了实现以前我将所有到达我的eth1接口的互联网stream量redirect到一个IFB设备,在那里我实现stream量整形。 不过,我现在面临的问题是,所有的交通都是上高级的。 为了做这个过滤,我使用iptables来设置传入stream量上的标记,我想这是我在做错误的地方。 我在“mangle”表中插入我的过滤规则,在这里我尝试了PREROUTING,FORWARD和POSTROUTING链,但是在任何这些链中都不起作用。 任何帮助表示赞赏。 最好的祝福 丹尼尔 我在这里附上我正在使用的脚本: # Variable definition ETH=eth1 IFB=ifb1 IP_LP="192.168.1.22/32" DL_RATE="900kbit" HP_RATE="890kbit" LP_RATE="10kbit" TC="tc" IPTABLES="iptables" # Loading the required modules insmod ifb insmod sch_htb insmod sch_ingress insmod ipt_IMQ insmod act_mirred insmod act_connmark insmod cls_u32 insmod cls_fw insmod em_u32 # Bringing up the $IFB interface, and redirecting […]

在OpenWRT上重写基于IP的URL

我们在WRT54GL上运行OpenWRT。 我一直在寻找这个答案,但我似乎无法弄清楚要search什么,如果可能的话,或使用什么样的程序组合。 我希望能够根据其MAC地址redirect来自WiFi设备的HTTP请求。 这对设备应该都是透明的。 基本上我们试图将任何未注册的设备redirect到一个网站来注册设备(在这一点上,我们会推动一个新的configuration到路由器,使这个MAC地址“完全访问”)。 一旦设备注册,它将被redirect到另一台机器上的透明squid代理服务器,以caching/阻止某些站点。 我看了tinyproxy – > popiloredirect,但我不会有MAC地址知道它的注册与否。 任何帮助(谷歌的build议,程序,任何东西!)将非常感激!

哪个Linux发行版可以joinWindows 2008 R2 ADS域

关于哪个发行版最适合连接到Windows 2008 R2域的任何意见。 我开始评估各种不同的Linux版本,以确定哪些最适合服务器使用,而不是所有的桌面臃肿。 在与虚拟化相关的速度testing中,我发现CentOS,Debian和openSUSE的速度比其他的要快。 因此决定去这些,并尝试连接到我的Windows域。 问题是,当将Linux连接到Windows ADS域时,事情比我想像的要困难得多。 我认为openSUSE会很容易,因为它带有YaST控制面板,我发现构build得非常好。 那么现在没有它现在发生的openSUSE无法连接到任何域名为xxxx.local,这是大多数Microsoft ADS域。 CentOS最终做到了,但并不容易。 Debian不会因为未知的原因而工作。 因此,我从另一个方面来看待这个问题,Linux发行版最适合joinWindows域?

validation发送数据包对接收的数据包?

运行Ubuntu。 我有机器A – >机器B( 从A到B的单向连接 )。 机器一个目标是转发TCP数据包到机器B( 它dosnt与机器B有tcp连接,它只是转发它从其他机器获得的tcp数据包)在机器A中有c ++代码,它们根据业务规则收集一些tcp数据包,把它们通过原始套接字写入机器B. 我想在机器A上对我的代码进行性能testing,所以为了做到这一点,我需要发送大量的TCP数据包到机器上。我的c ++代码将它们转发给B.最后,我将validation所有的数据包都恢复了机器B.你有什么build议工具? 将模拟大量发送和工具,将有助于断言(可以通过数量,校验和,任何其他想法断言) 我认为上传大文件文件转储上传stream量,并与tcpreplay重播(我将创build100个线程,重播相同的上传转储,以便有大量的tcpstream)。 为了validation,我将分析接收方的tcpdump,以检查它是否与发送的数据包数量相同。 这不是关于tcp的,因为协议只生成真正的tcp数据包(作为结构)发送大量的数据,并通过比较有效负载或数量或任何其他方式进行validation。 有什么build议?

Debian / Ubuntu – 没有networking连接

我的Ubuntu 12.04 LTS服务器上有一个非常奇怪的情况。 我无法访问(ping)我的网关,虽然我相信我的configuration是好的 – 我附上输出。 任何提示在哪里看? (我把IP的开头改成了不同的东西,只是模糊处理) ping 5.9.10.129 PING 5.9.10.129 (5.9.10.129) 56(84) bytes of data. From 5.9.10.129 (5.9.10.129) icmp_seq=2 Destination Host Unreachable From 5.9.10.129 (5.9.10.129) icmp_seq=3 Destination Host Unreachable From 5.9.10.129 (5.9.10.129) icmp_seq=4 Destination Host Unreachable uname -r 3.2.0-29generics ifconfig eth0 eth0 Link encap:Ethernet HWaddr 3c:97:0e:0e:54:d7 inet addr:5.9.10.142 Bcast:5.9.10.159 Mask:255.255.255.224 inet6 addr: fe80::8e70:5aff:feda:c4ac/64 […]

使用两台设备通过Linux服务器访问stream量

这是我目前的设置(所有服务器都是Ubuntu Server Edition 12.04): 服务器0有两个设备,eth0和eth1。 eth0连接到墙上(互联网),eth1连接到交换机。 eth1在/ etc / network / interfaces中具有以下条目: auto eth1 iface eth1 inet static address 192.168.1.1 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 服务器1-4每个都有一个设备eth0。 它们都连接到交换机,并且它们都从服务器0获取它们的DHCP信息。eth0具有以下接口条目(这是因为服务器1-4是无盘节点,要求服务器0启动所需的一切): iface eth0 inet manual 使用此configuration,服务器0是唯一可以访问Internet的服务器。 我将如何去路由从服务器1-4到服务器0的任何Web请求(如apt-get或HTTP),以便为服务器1-4上网? 这似乎是一个多次遇到的问题,但我不能为我的生活弄清楚如何正确设置networking。 route -n的输出是: Destination Gateway Genmask Flags … Iface 0.0.0.0 123.45.132.254 0.0.0.0 UG … eth0 123.45.132.0 0.0.0.0 255.255.255.0 U … eth0 […]

服务networking重新启动不工作在Ubuntu上

这一个已经开了很多我的头,我似乎无法find一个体面的答案,希望你们可以摆脱一些光… … # Loopback interface: auto lo iface lo inet loopback # Ethernet 0 interface: auto eth0 iface eth0 inet static address 10.10.20.100 netmask 255.255.255.0 network 10.10.20.0 broadcast 10.10.20.255 gateway 10.10.20.1 dns-nameservers 10.10.20.1 8.8.8.8 hwaddress ether XXXXXXXX dns-search defaultdomain # Ethernet 1 interface: auto eth1 iface eth1 inet static address 10.10.20.125 netmask 255.255.255.0 network 10.10.20.0 […]

VirtualBox虚拟机之间的虚拟IPv6networking

我正在尝试创build一个虚拟IPv6networking作为testing环境。 我有5个VirtualBox虚拟机(Ubuntu服务器)与networking适配器使用主机专用networking。 你可以想象他们被串联连接,每台机器连接2个子网。 我想从第一台ping最后一台机器:On:2001:db8:aaaa :: 100我想ping 2001年:db8:dddd :: 101(注意:之间没有ccccnetworking) 仅使用静态configuration和路由: /etc/network/interfaces auto eth0 iface eth0 inet6 static address 2001:db8:aaaa::100 netmask 64 /etc/network/interfaces auto eth0 iface eth0 inet6 static address 2001:db8:aaaa::101 netmask 64 auto eth1 iface eth1 inet6 static address 2001:db8:bbbb::100 netmask 64 up ip -6 route add 2001:db8:dddd::/64 via 2001:db8:bbbb::101 dev eth1 down ip -6 […]

HTTP Keep-Alive与EC2 Linux,Nginx和Chrome解谜

请帮忙解决HTTP保持活着的问题。 基本上,我在运行nginx( v1.2.6 )的EC2上有amazon-ami linux( v2012.09 )。 Chrome( v25.0.1364.99 )正常访问HTTP页面,然后经过约30秒的连接(由于netstat在服务器上监视)而丢弃(未知原因)。 之后,如果chrome从服务器请求某个东西,它将无法接收任何内容,并等待一些明显中断的连接。 超时后,以后的请求工作正常。 Nginxconfigurationkeepalive_timeout 70s 60s; cat /proc/sys/net/ipv4/tcp_keepalive_time显示7200 这可能是一件容易的事,但是使用谷歌search显示了很多类似的问题,但不完全一样。 ( https://code.google.com/p/chromium/issues/detail?id=27400请阅读http://blog.fastmail.fm/2011/06/28/http-keep-alive-connection-timeouts / )。 什么答案会有帮助: 如何更改服务器的configuration,以避免过度等待Chrome浏览器掉线 什么产品可能会内容错误或可以使用什么解决方法 对于Chrome来说,禁用保持活动是一种不得已的解决scheme:因为它减less了响应延迟,并且具有很长的HTTP连接保持活动时间,至less有一分钟。 谢谢