Articles of Linuxnetworking

如何创buildvirbr0-nic?

我如何创build像virbr0-nic这样的虚拟networking接口? 我试图find一种方法来创build像virbr0-nic这样virbr0-nic但是我可以在互联网上find的所有东西都是如何创build一个连接到物理接口(如eth0:0接口。 当我写 # brctl show bridge name bridge id STP enabled interfaces virbr0 8000.525400e0af01 yes virbr0-nic virbr1 8000.525400e8a6b1 yes virbr1-nic vnet1 所以virbr0是连接virbr0-nic的桥梁。 那么virbr0-nic和vnet1是如何创build的?

改变/ proc / sys / net / ipv4 / tcp_tw_reuse的值是否危险?

我们有几个生产系统最近被转换成虚拟机。 我们的应用程序经常访问MySQL数据库,并为每个查询创build一个连接,查询并断开连接。 这不是查询(我知道)的适当的方式,但我们有我们似乎无法解决的约束。 无论如何,问题是这样的:虽然机器是一个物理主机,程序运行良好。 一旦转换到虚拟机,我们注意到数据库的间歇性连接问题。 有一次,在TIME_WAIT有24000+套接字连接(在物理主机上,我看到的最多的是17000 – 不好,但不会造成问题)。 我想这些连接被重用,以便我们不会看到连接问题,所以: 问题: 可以设置tcp_tw_reuse的值为1吗? 什么是明显的危险? 有什么理由我不应该这样做吗? 另外,还有没有其他办法可以让系统(RHEL / CentOS)阻止如此多的连接进入TIME_WAIT,或者让它们被重用? 最后,改变tcp_tw_recycle会做什么,并会帮助我? 提前,谢谢!

将3个1G网卡绑定为一个3G网卡?

例如,我有3个NIC(1GB),并build立一个绑定的NIC。 我有3GB的网卡吗? 我应该将这3个网卡连接到1台交换机吗? 如果一个网卡死了,我还有服务器和交换机之间的networking还活着吗? 还是应该将每个NIC连接到3个不同的交换机? 所以,如果一个网卡或一个交换机死亡,我仍然有networking活着? 我应该使用哪种模式?

Linux e1000e(Intelnetworking驱动程序)与resume和pcie = off的问题

这个问题是这个问题的延续。 我的以太网芯片组和e1000e驱动程序遇到了很多问题: 02:00.0 Ethernet controller: Intel Corporation 82573L Gigabit Ethernet Controller 显然, 如果没有pcie=off ,它根本不能工作,即使有了这个选项,我从暂停状态恢复后也不能工作。 有没有人对此有任何build议? 这是上游的错误吗? 这是当我尝试从dmesg恢复和使用我的以太网卡时发生的情况。 如果你想看到许多诊断工具的结果,一定要查看我以前的问题,其中有关于我的configuration大量的信息 。 [20837.993481] e1000e 0000:02:00.0: eth0: Detected Hardware Unit Hang: [20837.993485] TDH <55> [20837.993488] TDT <7b> [20837.993490] next_to_use <7b> [20837.993492] next_to_clean <54> [20837.993494] buffer_info[next_to_clean]: [20837.993496] time_stamp <4e4097> [20837.993498] next_to_watch <55> [20837.993501] jiffies <4e58a2> [20837.993503] next_to_watch.status <0> [20837.993505] MAC […]

RTNETLINK回答:执行'服务networking重启'时存在文件

执行任一命令: sudo service network restart sudo ifup bond0 结果在以下错误(这是唯一的错误): Bringing up interface eth0: RTNETLINK answers: File exists 以下是涉及的接口的configuration: DEVICE="bond0" IPADDR="10.100.48.6" NETMASK="255.255.254.0" ONBOOT="yes" DEVICE="eth0" MASTER="bond0" SALVE="yes" HWADDR="78:2B:CB:57:B5:B3" NM_CONTROLLED="no" ONBOOT="yes" DEVICE="eth4" MASTER="bond0" SLAVE="yes" HWADDR="00:1B:21:C9:F4:54" NM_CONTROLLED="no" ONBOOT="yes" dmesg输出表明eth0没有准备好当bonding驱动程序试图奴役它: dmesg | egrep '(eth0)|(bond0)' bnx2 0000:01:00.0: eth0: Broadcom NetXtreme II BCM5709 1000Base-T (C0) PCI Express found at mem d4000000, IRQ […]

Siege:描述符表full sock.c:119:打开的文件过多

我试图在我自己的服务器上使用以下命令使用siege进行压力testing: $ siege -c 500 myweb.com/somefile.php 但是我得到这个错误: [error] descriptor table full sock.c:119: Too many open files 我也得到这个警告: libgcc_s.so.1 must be installed for pthread_cancel to work 但我使用Ubuntu 15.04(开发分支),我已经安装了包libgcc1,所以我不知道为什么它抱怨.so共享库。 我怎样才能解决太多打开的文件和libgcc警告?

ISP的设备是否configuration错误? 在Internet接口上获取火星包

我们的ISP有一个/ 28块。 假设1.1.1.240/28的网关是1.1.1.241。 我们正在从1.1.1.214获得另一位客户的火星包。 他们正在向1.1.1.255发送广播。 我们应该得到这些数据包? 我不明白这种情况下的广播。 系统日志消息 火星源1.1.1.255从1.1.1.214开始,在dev eth0上 ll header:ff:ff:ff:ff:ff:ff:00:XX:f3:XX:69:ad:08:00 networking接口: $ ifconfig eth0 eth0 Link encap:Ethernet HWaddr XX:XX:XX:XX:XX:XX inet addr:1.1.1.243 Bcast:1.1.1.255 Mask:255.255.255.240 广播运行多播MTU:1500公制:1 RX数据包:15161982错误:0丢弃:0超出:0帧:0 TX数据包:1627243错误:0丢弃:0超载:0载波:0 碰撞:0 txqueuelen:100 RX字节:1028191733(1.0 GB)TX字节:140279903(140.2 MB) 内存:fbde0000-fbe00000 或者,也许接口configuration错误? Bcast在那里列为1.1.1.255。 如果这是正常的行为,我不认为内核应该每分钟都要将数以百计的这些数据传给syslog。 UPDATE 这些数据包不断以每秒2-3次的速度出现。 我已经抓住了他们,他们的UDP src / dst端口15001:10:00:91:13:00:00:39:22:23:02:00:00:00:00:00:01:3c:62:65 :61:63:1207:6E:2F:3E

CentOS虚拟机在添加辅助networking接口时没有icfg-eth1

我有一个在虚拟框中创build的CentOS 6.7最小分布。 事后,我在virtualbox中添加了一个辅助networking接口,所以我有一个NAT接口和一个只有主机的本地networking。 当我login到我的虚拟机并运行: ip link show 显示eth0为UP,eth1显示为DOWN。 当我尝试: ifup eth1 我没有findeth1的configuration。 当我查看/ etc / sysconfig / network-scripts时,我看到一个icfg-eth0文件,但没有看到icfg-eth1文件。 我有几个问题: 当我在virtualbox中添加主机专用本地连接时,是否应该生成icfg-eth1? 如果我必须自己创buildicfg-eth *文件,我应该使用哪个工具来生成它? 我应该安装哪个软件包来获取它? 我应该手动编辑/ etc / sysconfig / network-scripts的内容吗?

使用iptables阻止来自一个NIC的所有传出stream量?

我必须相当糟糕的谷歌search,因为这似乎是一个非常基本的问题,但我似乎无法find答案任何地方…和man iptables是一个很长的阅读! 我有两个网卡 – eth0和eth1 – 在一个Linux机器上,我想阻止所有出站stream量(所有端口上的TCP和UDP)从一个网卡,所以没有stream量返回到路由器。 这是什么命令? 我只看到特定端口的例子。 提前致谢。

了解DNSparsing器之间的区别

介绍 在试图debugging局域网上的networking问题时,很明显curl host nslookup和dig行为有所不同。 dig和host在哪里返回有关URL的IP地址, curl和nslookup返回: curl: (6) Could not resolve host: internal.site.company.com 和 nslookup: can't resolve 'internal.site.company.com` 上下文 虽然这并不重要,但是在给出更多问题的背景下,这个问题发生在docker机器上(在virtualbox和parallels virtualbox使用docker-machine进行testing)。 它托pipe的docker-machine和容器都在他们的/etc/resolv.conf中拥有所需内部DNS服务器的正确IP地址。 所需URL的IP地址也可以从无法parsing名称的机器访问。 如上所述,地址是一个内部站点,我们的DNS服务器也是内部的。 该站点是可到达的并且可以从docker-machine安装的计算机上parsing。 问题 这给我带来的问题是… 1)在引擎盖下, dig和host与cURL和nslookup什么不同? 2)什么可能是防止浏览器或curlparsingURL的方式host和dig都成功parsing名称? build立 dig -v : DiG 9.11.1 host -v : host 9.11.1 curl -V : curl 7.49.1 docker版本: Version 17.06.0-ce-mac19 (18663) Channel: stable Boot2Docker version 17.06.0-ce, […]