Articles of Linuxnetworking

连接两个VPN服务器

我在2个地方有2个VPS。 第一个vps位于伊朗,拥有ip:AAAA第二个vps位于美国,拥有ip:BBBB 我在服务器1上运行pptp / l2tp,我的VPN用户通过有效的ip:AAAA连接到它。另外,我在服务器2(BBBB)上运行openvpn。 我想连接服务器1到2,并将所有通信转发到服务器2.换句话说,当我的用户连接到服务器1(AAAA)时,他们可以使用ip BBBB 我也尝试用openvpn连接服务器1到2与“redirect网关def1”,但是当它完全连接,它失去了其有效的IP AAAA和我的客户端无法ping AAAA .. 我如何得到这个工作? 谢谢。 编辑:我可以通过openvpn“网站所以现场”连接2台服务器,他们可以ping相互没有丢失有效的IP,但我不能redirectstream量从服务器AAAA到BBBB

限制每个IP的最大带宽

我有一些合作伙伴,使用我的一个Linux服务器作为网关。 问题是我需要在这个网关上限制每个客户端ip地址的带宽。 我的合作伙伴客户端IP范围是不知道的。 我一直在看Traffic Control和iptables,但是找不到解决scheme。

Virtualbox – 将子网路由到网桥适配器

我已经build立了一个Debian Lenny盒子,其中3台vbox Lenny机器以桥接模式运行主机的eth0(在virtualbox 3.1.6上)。 当在我的本地局域网中进行testing时,这一切都工作得非常好,并且stream量应该在虚拟机的IP之间stream动。 但是,现在它已经在家里,networking设置有点不一样了,我无法使stream量正确地stream向vbox。 具体来说,主机有自己的主IP,我有一个单独的子网8路由(6个可用)IP路由到框供vbox使用。 所以,主机上的eth0是: Machine IP: 2x.xx137 Gateway IP: 2x.xx138 Subnet Msk: 255.255.255.252 vboxes的子网是 Subnet: 2x.xx240/29 Netmask: 255.255.255.248 vbox1在eth0上configuration为2x.xx241,如下所示: auto eth0 iface eth0 inet static address 2x.xx241 netmask 255.255.255.248 使用这些子网IP之一在主机上设置虚拟接口(eth0:0),可以使我只能从vbox1 ping到该地址,并允许从主机ping vbox1。 我也可以很好地从外面ping这个虚拟接口,所以这些IP肯定会在我的机器上登陆。 看来我缺less某种路由指令,无论是在主机上还是在vbox1上,让stream量在子网和默认网关之间移动,但我似乎无法弄清楚它应该是什么,或什么明显的事情,失踪了 大多数我明显的尝试(eth0的gw,eth0的ip)被SIOCADDRT的路由命令拒绝了:没有这样的设备(例如 – 我找不到它)。 我尝试设置vbox1桥接eth0:0,但这不是一个可以接受的设备名称和VBoxHeadless拒绝启动。 物理机器在eth1上有一个未使用的物理网卡,如果有必要,可以使用它。 主机正在运行由fermconfiguration的iptables,已经尝试过允许该子网转发,但是我不会认为这是必要的,因为virtualbox设备的性质(实际上并没有工作)。 清除所有这些规则的空白iptables设置不能解决问题。 (你可以在http://codedumper.com/ojaze上看到ferm生成的iptables) 谢谢你提供的所有帮助… 帕特里克

如何在Ubuntu上使用茶杯

我需要在我的ubuntu客户端上使用茶杯下载EXPECT包。 我已经安装了Active Tcl 8.5。 我也为LINUX安装了EXPECT。 但是,我没有使用Tcl Dev Kit的EXPECT软件包。 有人可以告诉我如何获得茶杯的工作,以下载EXPECT包? 先谢谢你

有没有办法跟踪发送无偿arps?

我们有一个刚刚开始行动的盒子,我们不知道为什么。 它在eth0上有199.199.199.1的IP地址,在eth1上有127.0.0.2,在eth1上有199.199.199.2。 最近,由于某种原因,eth0已经开始发送声称为199.199.199.2的免费arps。 这会导致所有需要通过eth1路由到199.199.199.2的stream量。 我正在阅读arpstream量,但似乎并不是问题,因为据我所知,这只是对arp请求的答复,而不是无偿arps。 在发送这些免费arps的stream程中没有看到任何明显的东西。 我的问题是,有什么办法找出发送这些请求的是什么? 像netstat -p但是对于arp? 这是一个运行Linux w / kernel 2.6.18的机器。

无法查看networking上的Ubuntu PC,无法访问Apache,但可以ping和使用samba共享。

我以为这是因为networking上的两台机器具有相同的主机名,因此提出这个问题 。 但是这并没有解决问题。 机器响应我的ping。 但是,当我去“ Places > Network ,我无法查看该计算机。 我也无法从他的机器上查看networking上的其他机器。 什么似乎是问题? 编辑:我可以查看使用桑巴协议,通过在鹦鹉螺中键入此文件夹: smb://192.168.1.5 但是我不能通过在浏览器中input他的机器上运行的tomcat: http://192.168.1.5:8000 在我的办公室有一个mac-mini,可以查看这台机器,反之亦然。

早期拥塞检测

Linux中有没有工具可以帮助我预先检测networking拥塞? 如果能够告诉我一个特定的networking拥塞,那么我怎样才能通过不同的路由来路由我的数据包,以避免拥塞的networking?

在GNU / Linux上调整networking堆栈缓冲区大小

这是一个很好的调整缓冲区大小的方法。 我有一个2.6.30+内核的Ubuntu安装。 这些更改是必需的还是会提高内核的性能? 我在问这个问题,因为在howto页面上的一个注释说2.6.18以上的内核不需要这样的改变。

将VPNstream量从Linux Box路由到Windows Box

我们有一个在Windows上运行的VPN客户端(因为这是运行VPN客户端的唯一操作系统),我们有一些Linux盒子需要通过该VPN为10.xxx IP路由stream量。 我不知道什么是最好的方法来configurationWindows来通过VPN路由来自我们的Linux机箱的stream量。 我已经在Linux上设置了路由表来将stream量路由到窗口框,但是之后我就卡住了。 任何build议将不胜感激。

通过小包丢失的networking提高TCP性能

我试图通过一个“高延迟networking”来提高TCP吞吐量,在Linux机器之间有一些数据包丢失。 我将tcp_mem , tcp_wmem和tcp_rmem为“8192 20530752 20530752”。 我将rmem_max , wmem_max , rmem_default和wmem_default为“20530752”。 我将netdev_max_backlog和txqueuelen设置为50000。 我将tcp_congestion_control设置为“可伸缩”。 我使用“nist”(cnistnet)来模拟延迟50ms(每个方向25ms)和0.5%(每个方向0.25%)的下降,BW I达到约7.48mbps。 下面是一个结果表(使用iperf来度量费率): | 0ms | 50ms 0% | 710mbps | 276mbps 0.5% | 181mbps | 7.48mbps 我没有想到延迟会对吞吐量产生如此大的影响(不适用于这些大的TCP窗口)。 我也没想到这个滴效果如此之好。 特别是与“可伸缩”algorithm不同,因为它的“拥塞窗口”应该很快从数据包丢失恢复。 我用tcpdump & sar (sysstat的一部分)试图看看发生了什么事情。 在萨尔的报告中我没有看到任何可疑的东西。 而在tcp转储我看到: “rexmt data pkts”= 88(在8183中发送) “rexmt data bytes”= 127,424字节(已发送的44,649,104个字节) “avg owin”= 135,964字节。 “avg retr time”= 53.5 ms。 […]