标签:IPTABLES

Unix Like, 操作系统, 网络

QoS —— 交互式应用最低延迟,HTTP(S)、IMAP等常用服务优先,迅雷、P2P受限

前言 使用迅雷全速下载时,其余网络应用的体验几乎约等于断网状态。 全速下载时,迅雷并没有占用太多上行带宽,于路由器上观察上行速率,同样正常: 可见全速下载时出现的现象,问题在于下行。 迅雷全网搜索资源,这意味着会有许多来自不同地方的计算机,以高速率往我的计算机发来大量数据包。ISP处的队列早已被这些P2P数据包塞满,而SSH、网页等服务的数据包速率不高,根本不够P2P数据包竞争,这些数据包到达ISP处时,只能由于队列已满而被丢弃。   其实这个问题,并没有什么好的解决办法,因为ISP处的队列我们没有权限控制。 我们所能做的,只是控制P2P的速率,避免因ISP处队列满而使得数据包被丢弃 […]

Read more No Comments
Unix Like, 操作系统, 网络

使用策略路由实现涉及getsockopt(…, SO_ORIGINAL_DST, …)程序的远程调用(Redsocks, ss-redir之类的远程调用)

Redsocks/ss-redir的实现 DNAT与REDIRECT模块在iptables target extension之列。 这两个模块都能根据参数,修改数据包的header中的目的IP和端口。 既然修改,那就不是附加,毕竟网络层传输层header的内容怎么可能随随便便增删呢,这意味着,数据包的真实目的地会被完完全全地抹掉! Redsocks/ss-redir收到这样的数据包后,不做特殊处理,何以知道这数据包原来想发给谁呢? 这些程序之所以能正常工作,得益于NAT的透明性,被NAT处理的数据包,在内核中均有所记录,NAT后的正常通讯由NAT发起者维持,Redsocks/ss-redir这 […]

Read more 2 Comments
Unix Like, 操作系统, 服务器, 未分类

解决安装OpenVZ vzctl 4.7后iptables nat表提示”can’t initialize iptables table `nat’: Table does not exist (do you need to insm Perhaps iptables or your kernel needs to be upgraded.”

几天前给一个服务器安装OpenVZ后,使用iptables添加nat规则时,出现错误提示:

执行lsmod看了下:

发现相关的NAT模块都已经加载,应该与内核无关。 更换内核回2.6.32-431.11.2.el6,问题还是如此,无奈之下重装系统。 安装系统后,我手动一个个下载OpenVZ的RPM包,一个个安装,然后重启后nat表是否可以使用,最后发现安装vzctl 4.7并且重启后,iptables的nat表就出问题了。 看了下官网,原来在OpenVZ在2014 […]

Read more 5 Comments
Unix Like, 服务器

使用IPTABLES实现对特定IP,端口流量的精确统计

IPTABLES Traffic

相信有人会想过如何对服务器上某个特定IP出口/入口流量进行进行统计。不需要找其他程序,Linux kernel 2.6(2.4算不算?)与之后版本自带的iptables就能实现此功能。方法非常简单,在iptables处添加特定规则即可。 对特定IP进行流量统计: 例如我要统计服务器上的IP:192.168.0.10的入网流量:

统计该IP的出网流量:

统计特定端口的流量: 方法和统计IP的流量差不多,使用-p指定端口类型,–dport指定端口号。 例如 […]

Read more 2 Comments
服务器, 未分类, 运营维护

巧用Nginx的日志功能配合IPTABLES实现防范基础CC攻击(2013年11月24日8:24:13更新)

Log File

相信不少人都被CC过,我也不例外,因此一直以来想尽各种办法降低PHP所占的资源。 PHP所耗的资源算压下去了,带宽却满了…… 之前也看过有人使用Nginx的第三方模块limit req2实现防CC攻击,自己也弄过,但效果没想象中的好,只用了几十分钟我就抛弃了…… 昨天其中考试结束后,突然灵机一动,想到一个新的防CC方法。回家后经过多次调试,几经完善,已经基本能正常使用了。 这其中利用了Nginx的日志功能,还有自己写的一个Shell Script。本文出自微宇宙(http://zhensheng.im),转载者死一户口本。 Apache的请移步这里:Apache:只有访客IP的日志格式 首先给 […]

Read more 14 Comments