Questions tagged «linux-networking»

Linux网络是指由运行Linux的服务器执行的任何网络功能。充当路由器或防火墙的Linux服务器是最常见的应用程序。

3
将mysqldump的输出重定向到scp
多年前,我曾与一位Linux专业人士合作,完成过这一绝妙的技巧。他可以执行mysqldump,但将输出重定向到scp / ssh连接,而不是写入disk。我们曾经在我曾经工作过的地方使用过这种安静的环境,但是我不记得该怎么做了。 我现在面临的问题是服务器中的硬盘驱动器已停在最后一站,并且出于密集目的,该驱动器被永久安装为只读。 我希望利用这种命令行技巧,仍然能够将数据库备份到新服务器上,因为将转储写入本地磁盘并进行传输显然是不可能的。 这个小技巧实际上可行吗?如果是这样,语法是什么? 自从我意识到由于只读文件系统问题,我什至无法连接到mysql进行转储。但是您的反馈意见很棒,希望以后能被其他人使用

1
SynProxy无法返回具有非对称双桥拓扑的syn ack数据包
当我使用ssh从172.16.11.5和172.16.10.6连接时,我具有如下所示的非对称双桥拓扑,但是由于SynProxy我无法连接。 ------- | | ---o--- 172.16.11.5 | | -----o----- 172.16.11.6 | | | | default gw 1.1.1.1 | | 1.1.1.2/30 --o----o--- 2.2.2.2/30 | | | | | | (enp10s0f0) ----o----o----- | | | XXX | | | | br1 br0 | synproxy | | ----o----o----- | | | | | …

2
特定节点无法看到arp请求
我使用创建了一个开放的临时局域网iwconfig(我也有同样的问题wpa_supplicant)。如下图所示,网络上有4个节点。这些节点运行ubuntu 12.04和debian squeeze,并具有3.7.1、3.5和3.2内核。我使用两个不同的USB加密狗品牌(TP链接和ZCN),它们都具有AR9271芯片组和ath9k_htc驱动程序(这里是lsusb输出和ethtool输出)。 我遇到的问题是,具有TP链接usb wifi加密狗的两个节点(10.0.0.2和10.0.0.5)可以ping网络上的任何节点,反之亦然。但是,具有ZCN wifi加密狗的其他节点(10.0.0.6和10.0.0.7)无法相互ping通,但与TP-link wifi模块进行通信没有问题。tcpdump显示10.0.0.6并且10.0.0.7看不到他们的arp请求,例如 20:37:52.470305 ARP, Request who-has 10.0.0.7 tell 10.0.0.6, length 28 20:37:53.463713 ARP, Request who-has 10.0.0.7 tell 10.0.0.6, length 28 20:37:54.463622 ARP, Request who-has 10.0.0.7 tell 10.0.0.6, length 28 20:37:55.472868 ARP, Request who-has 10.0.0.7 tell 10.0.0.6, length 28 20:37:56.463439 ARP, Request who-has 10.0.0.7 tell 10.0.0.6, …

5
tc u32 —如何在最近的内核中匹配L2协议?
我有一个很好的成型器,带有哈希过滤,是在linux桥上构建的。简而言之,对于br0连接接口external和internal物理接口,VLAN标记的数据包是“透明”桥接的(我的意思是,那里没有VLAN接口)。 现在,不同的内核执行不同的操作。我可能对确切的内核版本范围有误,请原谅。谢谢。 2.6.26 因此,在debian中,2.6.26及更高版本(我相信最多为2.6.32)---可行: tc filter add dev internal protocol 802.1q parent 1:0 prio 100 \ u32 ht 1:64 match ip dst 192.168.1.100 flowid 1:200 在这里,“内核”将“协议”字段中的两个字节与0x8100匹配,但是将ip数据包的开头计为“零位置”(对不起,我的英语不好意思,如果我不太清楚的话)。 2.6.32 同样,在debian(我还没有构建香草内核)中,2.6.32-5 ---这可行: tc filter add dev internal protocol 802.1q parent 1:0 prio 100 \ u32 ht 1:64 match ip dst 192.168.1.100 at 20 …

1
NAPI与自适应中断
谁能解释在高网络负载下如何使用以下两种技术来减轻中断开销? 自适应rx /自适应tx NAPI; 我希望得到一个能解释接近Linux内核源代码级别差异的答案?我也想听听如何在负载约为400Mbps时强制NIC进入轮询/中断合并模式。 更多背景: 问题似乎是bnx2和e1000驱动程序忽略了“ ethtool -Cadaptive-rx on”命令。这可能是因为这些驱动程序不支持自适应中断。尽管Broadcom程序员参考手册说BCM5709 NIC硬件应支持此功能。 因此,我决定尝试使用NAPI并将netif_napi_add()函数调用中的权重从64降低到16,以强制NIC在轮询模式下以低得多的负载运行,但是不幸的是,这种方法无法解决。我猜想NAPI在NIC中不需要任何特殊的硬件支持,对吗? 我使用的硬件是BCM5709 NIC(它使用bnx2驱动程序)。操作系统是Ubuntu 10.04。CPU是XEON 5620。

2
PXE是否在内部联网模式下启动Virtualbox guest虚拟机?
我不确定这是特定于我发行版的软件包还是vbox的限制。因此,任何帮助将不胜感激。 好的,所以我有一个VM网络,其中一个VM充当“内部”网络中其他VM的NAT。这些虚拟机中的一个正在运行DHCP&TFTP服务器,我只需要从该服务器上启动其他虚拟机,但是从网络启动时,我启动的所有虚拟机都是“致命:无法从启动媒体中读取!系统暂停”。 因为vbox易于使用和试验,所以这有点令人不快,但我无法解决此错误。救命 ?


2
Debian 7如何设置IPv6链接本地地址?
好像dhclient在eth0上运行时,我从DHCP服务器获得了一个IPv4地址,并在eth0上附加了一个Scope:Link IPv6地址: inet6 addr: fe80::a00:27ff:fed0:4d41/64 Scope:Link 但是我从dhclient-script中看不到该地址是如何添加的。在另一个具有静态IP地址的接口上,我想添加一个链接本地IPv6地址,并且我想知道是否存在一个通用命令来执行此操作而不知道mac。 编辑: 当您执行“ ip link set dev ethX up”或“ ifconfig ethX up”时,内核似乎分配了链接本地地址。但是,在我的情况下,我将电缆插入了正在进行DHCP连接的接口,而没有电缆插入到我静态设置的接口中。在星期一之前无法验证,但我猜想如果没有链接,内核不会将链接本地地址分配给接口。

2
为什么Linux内核没有关闭FIN_WAIT2状态的连接?
我有一个叫长寿命过程中的问题KUBE-代理的存在部分Kubernetes。 问题是,连接有时不处于FIN_WAIT2状态。 $ sudo netstat -tpn | grep FIN_WAIT2 tcp6 0 0 10.244.0.1:33132 10.244.0.35:48936 FIN_WAIT2 14125/kube-proxy tcp6 0 0 10.244.0.1:48340 10.244.0.35:56339 FIN_WAIT2 14125/kube-proxy tcp6 0 0 10.244.0.1:52619 10.244.0.35:57859 FIN_WAIT2 14125/kube-proxy tcp6 0 0 10.244.0.1:33132 10.244.0.50:36466 FIN_WAIT2 14125/kube-proxy 这些连接会随着时间的推移而堆积,从而导致过程异常。我已经向Kubernetes错误跟踪器报告了一个问题,但是我想了解为什么Linux内核没有关闭这种连接。 根据其文档(搜索tcp_fin_timeout),处于FIN_WAIT2状态的连接应在X秒钟后由内核关闭,其中可以从/ proc读取X。在我的机器上,它设置为60: $ cat /proc/sys/net/ipv4/tcp_fin_timeout 60 因此,如果我理解正确,则此类连接应在60秒内关闭。但是事实并非如此,它们会处于这种状态数小时。 虽然我也知道FIN_WAIT2连接是非常不寻常的(这意味着主机正在等待连接的远程端可能已经消失的ACK),但我不明白为什么这些连接不会被系统“关闭” 。 有什么我可以做的吗? 请注意,重启相关过程是万不得已的方法。

3
阻止中国连接到我的Google Compute Engine服务器
我的公司在北美托管了一个Google Compute Engine服务器。我们有太多的中国IP地址向端口11发送请求,以至于我们花了钱进入该端口。我们的防火墙已经阻止了与中国的所有连接,因为它们无法访问我们的应用程序。 有没有一种方法可以完全忽略这些连接,或者以一种不会占用带宽的方式将其阻塞?

1
Netstat挂起:为什么?
有时(一点也不经常),当我键入“ netstat”时,它需要5秒钟以上的时间才能返回。而其他时间是瞬时的。 我已经在服务器(CentOS 6.4)上观察了好几个星期,但是我不明白为什么! 谁能解释一下?

1
创建具有两个Internet连接和一个LAN连接的多宿主Linux负载均衡器
好的,...这可能已经回答了,不幸的是,我没有找到任何看起来像是解决方案的东西。 Ive查看了这些页面,它们提供了一些有用的信息,但没有完整的解决方案: 在Linux上对多个ISP连接进行负载平衡和NAT处理 两个Internet连接和1个NIC,可能吗? Linux拆分访问(带有负载平衡的多个Internet连接) linux防火墙+负载平衡ISP连接 我将使用Debian 8,Ubuntu 16.04 Desktop或Ubuntu 16.04 Server(说实话,最有可能是Debian)。 好,所以我将安装三个NIC,两个千兆位,以及板载100 mbps的LAN连接。ISP连接将通过两个NIC上的PPPoE身份验证使用千兆位LAN卡(如果可能的话,否则我将在DSL调制解调器上采用非桥接模式)。并且两个网络都将分配有一个静态IP。当前(将更改)主连接有五个一组。我需要将来自这些IP地址之一的流量路由到网络上的适当服务器。 这是我的问题: 我该如何设置?我是否使用NATing,IP Chan,IP伪装,路由等...? 如何将从外部进入系统的流量路由到网络上的特定IP地址? 请放心,这是我第一次尝试过类似这样的事情:)。 编辑1 忘记添加网络拓扑: 编辑2 刚刚意识到一些事情...为了进行PPPoE身份验证,我将不得不在特定接口上强制对凭据进行身份验证。怎么做? 我在这里发布了这个问题: 创建具有两个Internet连接和一个LAN连接的多宿主Linux负载均衡器 更新1 仍然无法使多跳循环机制正常工作。我尝试遵循以下站点中概述的步骤,但没有走运: 在Linux上对多个ISP连接进行负载平衡和NAT处理 Linux-双Internet连接/负载平衡 HOWTO:Linux多路由 我或者不断收到一条消息,指出该文件已经存在或设备无效。这是/是我的设置/信息 IFCONFIG eth0 Link encap:Ethernet HWaddr ec:08:6b:04:8e:ac inet addr:172.16.0.2 Bcast:172.16.0.255 Mask:255.255.255.0 inet6 addr: fe80::ee08:6bff:fe04:8eac/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 …

5
virbr0-nic是如何创建的?
如何创建类似的虚拟网络接口virbr0-nic?我试图找到一种创建NIC之类的方法,virbr0-nic但是我在Internet上可以找到的所有内容都是如何创建连接到物理接口(如)的接口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创造?

1
如何调试Linux网络:地址已在使用中
我有一个Slackware linux框,在其中无法启动在本地主机上某个特定端口上侦听的任何服务。通过使用strace,我发现错误发生在bind()调用中,错误是EADDRINUSE (Address already in use): bind(3, {sa_family=AF_INET, sin_port=htons(874), sin_addr=inet_addr("127.0.0.1")}, 16) = -1 EADDRINUSE (Address already in use) 我尝试在该端口上开始侦听的任何进程都会发生这种情况,因此它与进程本身无关。上面的strace输出来自命令strace -ff nc -l -p 874 -s 127.0.0.1。 因此,这表明已经有一个进程正在侦听localhost端口874。但是,我似乎找不到它。以下命令均不返回任何内容: netstat -aplunt | grep :874 netstat -na | grep :874 lsof -i :874 lsof -i tcp | grep 874 fuser 874/tcp socklist | …

4
AWS VPC + IPtables + NAT:端口转发不起作用
昨天,我在这里发表了一个问题,但我认为我的话还不够清楚。顺便说一句,这个问题不是重复的。 我有如下的AWS VPC设置。 目标/问题:从Internet SSH到服务器A。而且它不起作用。 服务器A位于私有子网中,因此我想在NAT实例上启用iptables NAT,以便可以直接从Internet SSH到服务器A 我下面这个和这个 我在NAT实例上运行以下命令: NAT# iptables -t nat -A PREROUTING -p tcp --dport 2222 -j DNAT --to-destination 10.0.1.243:22 在NAT实例上启用IP转发: NAT# sysctl -p net.ipv4.ip_forward = 1 MASQUERADE在NAT实例上运行: NAT# iptables -t nat -vnL POSTROUTING Chain POSTROUTING (policy ACCEPT 6 packets, 312 bytes) pkts bytes target prot …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.