我有几个需要连接到远程服务的服务器。 这些服务器是我控制下的ec2实例。 远程服务运行在我公司pipe理的服务器上,但不是我的部门,我不确定它在哪里托pipe。 出于安全原因,远程服务将只允许在特定端口上的一个IP地址(这是一个AWS弹性IP)访问该服务,因此所有请求都必须通过代理。 我已经查阅了几个如何完成这个任务的例子,并尝试了许多不同的改动,而且没有任何改动。 我试图根据我对iptables的了解来创build规则,并且提出了我已经有的规则(这依然不起作用)。 我希望有人能够帮助我迅速做到这一点。 $ cat /proc/sys/net/ipv4/ip_forward 1 $proxy_ip $remote_server_ip $remote_server_port *nat :PREROUTING ACCEPT [0:0] :INPUT ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] -A PREROUTING -d $proxy_ip/32 -p tcp -m tcp –dport $remote_server_port -j DNAT –to-destination $remote_server_ip:$remote_server_port -A POSTROUTING -d $remote_server_ip/32 -p tcp -m tcp –dport $remote_server_port -j SNAT –to-source $proxy_ip […]
我在Ubuntu上运行,我想用TCP keepalive来实现主从之间的listenbeat。两个服务器是我的impl(c ++)。 我读了这个概述 ,做了一些谷歌。 我不明白TCP keepalive发送什么,我知道如果在TCP keepalive中使用连接不再有效。 我需要检查恢复的内容吗? 目标是在主从之间听取意见,所以如果一个人失败了,另一个人将成为主人。 在这篇文章中的build议是实现与tcp keepalive机制听力,所以这是我问我如何识别使用tcp keepalive时断开连接的原因。
我已经在Ubuntu上安装了一个brctl桥,进行了以下部署: Cisco router -> Linux bridge -> client computer 网桥转发以下数据包types: ARP,STP ,但不转发IP(我看到它在eth0中获取IP数据包,但dosnt转发到eth1) 尝试brctl br0 stp off (和)没有帮助。 试图用promisc模式激活两个以太网卡也没有帮助。 将边缘设置为0(并将最大边缘设置为0)也无济于事。 brctl setfd桥名时间,dosnt帮助。 Ebtables dosnt安装在桥接计算机上,所以这不是ebtables过滤的问题。 当我用一个模拟简单的TCP请求的简单计算机replace路由器时,网桥转发IP数据包,所以我怀疑STP 。 桥是这样设置的: iptables -X iptables -F ifconfig eth0 0.0.0.0 up ifconfig eth1 0.0.0.0 up brctl addbr br0 brctl addif br0 eth0 eth1 ifconfig br0 up
我试图在不太有利的条件下模拟我的应用程序的行为。 有没有一种工具可以让我通过限制带宽,引入延迟,丢弃包等来减慢我的networking连接? 我更喜欢它在IP层面上工作,但是对于我目前的testing来说,如果它是在TCP或HTTP层面上完成的话,它是可以接受的。
我的电脑正在运行Windows Server 2003 SP2。 每当我build立一个互联网连接(例如,与Internet Explorer到google.com),我的主机发送syn数据包两次。 由于两个syn分组在0.01ms的时间间隔内发送(根据wireshark时间戳),可能(不可能)重传。 我写了一个简短的java程序,简单地做一个socket.connect和我有同样的事情,但是如果我在另一台机器上运行程序(使用Windows XP),它是好的(没有重复的syn)。 任何人都知道这是关于什么? 更多的数据:当我启动与google.com的tcp连接时,我的电脑发送2 syn,然后我只得到1 syn / ack(我认为是正常的),但是,然后,我的电脑会发送两次。 任何帮助,欢迎!
我有运行MySQL服务器5.5.24的Ubuntu 12.04。 我可以连接mysql –user root -p 。 status显示我: … Connection: Localhost via UNIX socket … 当我尝试连接mysql –host 127.0.0.1 –user root -p (或与 – 协议–protocol=tcp )我可以连接(获得提示),但任何我会尝试做会得到我这个错误: ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect… Connection id: 39 Current database: *** NONE *** ERROR 2013 (HY000): Lost connection to MySQL server during […]
我有一个Linode VPS托pipe的多个网站,我遇到了其中一个问题:我尝试加载的每个页面都有大约10秒的延迟。 Apache日志很干净,同一台机器上的其他网站运行良好。 乍一看,我认为这是一个内存问题,因为VPS只有512M,但从林德仪表板CPU和磁盘I / O是正常的。 无论如何,在这里我们有公羊的地位: $ free -m total used free shared buffers cached Mem: 487 463 23 0 2 55 -/+ buffers/cache: 404 82 Swap: 255 155 100 只有23M免费,但如果这是一个内存问题,为什么其他网站像往常一样? 我用wireshark进行了一次实时捕捉,并且在10秒之前有一些重复的SYN ACK数据包。 我出于想法,寻找一些线索。 Wireshark实况截图截图 正如你从图像中看到的,差距在最后一个坏tcp之后。 先谢谢你。 UPDATE 我已经检查了debugging错误级别的Apache2日志,这是什么东西正在出现: 151.97.156.191 – – [14/Nov/2012:11:19:40 +0100] [www.fmaisi.it/sid#7f32c625a220][rid#7f32c6801578/subreq] (3) [perdir /home/fmaisi/sites/www.fmaisi.it/public_html/] applying pattern '^index\.php$' to uri 'index.php' […]
我在运行Debian Wheezy Beta 4(x86_64)KVMpipe理程序的Debian Wheezy Beta 4(x86_64)KVM guest上运行一个Mumble服务器(Murmur)。 客户机通过Virtionetworking接口连接到pipe理程序系统上的桥接设备。 pipe理程序连接到100Mbit / s上行链路,并在客户机和其余Internet之间进行IP路由。 在此设置中,我们正在经历双击客户端中的频道和正在进行的频道join操作之间的明显延迟。 在Linux和Windows系统上,1.2.3和1.2.4之间会有很多不同的客户端。 语音质量和延迟似乎完全不受此影响。 大多数情况下,客户端的信息对话框声明语音和控制信道的延迟时间为16ms。 控制信道的偏差大多比语音信道的偏差大得多。 在某些情况下,控制通道显示100ms的ping和大约1000的偏差。 看来TCP性能在这里是一个问题。 我们在早期的设置上没有任何问题,这在原则上与新设置相当。 我们使用基于Debian Lenny的Xen虚拟机pipe理程序和一个软虚拟客户机,而不是早期版本的Mumble 1.2.3系列。 目前的murmurd –version说: 1.2.3-349-g315b5f5-2.1 更新 :我发现这个讨论 ,有人在虚拟系统上运行混淆,这个系统遇到和我一样的问题。 我到目前为止所尝试的(没有任何成功的): 在我的pipe理程序系统上安装并尝试了笨拙的服务器 安装并使用客户系统上的testing版1.2.4 Mumble服务器进行testing 将我的SQLite数据库从最初的1MiB抽取到大约300 KiB 在系统上禁用IPv6以检查是否可能是问题源。 用Debian Squeeze(stable)安装了一个客户系统,然后在那里试了一下。 更新 :以前我说过我已经testing了将Mumble数据库和日志文件放在tmpfs内存中的文件系统中,并没有解决问题。 我在那里犯了一个错误,所以它实际上并不存储在tmpfs里面。 现在我已经做到了,性能问题已经没有了。 但将其存储在tmpfs中并不是真正解决我的问题的方法。
我一直在我们的服务器上进行一些监控,并且我们收到了警告:TCPv4 /重新传输的段数超过了可接受的阈值: View post on imgur.com 有什么方法可以根据这个图表看起来是什么问题? 它看起来非常“周期性”,似乎无论用户负载如何都一直超过门槛。
我有一个ARM设备(Guruplug),我希望它在networking上执行ARP欺骗攻击。 该设备有2个以太网接口和1个无线接入点。 我想在networking中插入这个设备,让它执行ARP欺骗攻击,成为中间人,然后通过无线访问点将所有stream量发送到我的笔记本电脑,并在我的笔记本电脑上运行wireshark会话,看到所有closures有线networking。 这里有一个小scheme: pc——–|—– | | | —————– pc——–|SWITCH|——————-|Default Gateway| | | —————– pc——–|—– | | | | | (eth0) | | ARM——— | Device——- v (eth1: duplicate packets from eth0, going to the right destination) V(uap0:duplicate packets from eth0) v Laptop (running wireshark, sees every packet) 现在我不知道该怎么做。 与tee命令closuresip表我只能重复UDPstream量,但我也想要TCP。 我可以毒死arp,用ettercap嗅一下设备本身的stream量,但是这只是terminal,我想在我的笔记本上看到它。 如果重要,ARM设备运行Debian(Lenny)和我的笔记本电脑Windows 7或Ubuntu 12.04 我不是要求如何,因为我确定我没有得到这个),但一些好的文章或软件的提示会很好! […]