打印

[总结] [已解决]求解 iptables connlimit为啥会有这么奇葩的提示...

[已解决]求解 iptables connlimit为啥会有这么奇葩的提示...

复制内容到剪贴板
代码:
# iptables -I FORWARD -p tcp --syn --dport 80 -m connlimit --connlimit-above 20 -j DROP
iptables: Protocol wrong type for socket.
语法明显没错...
但就是会说Protocol wrong type for socket.,理解不能...


系统:CentOS6.2(32位)(3.9.3-x86-linode52)
lnmp0.8

已解决:https://bbs.vpser.net/viewthread.php?tid=9649&pid=28453&page=1&extra=page%3D1#pid28453

[ 本帖最后由 Sonic1997 于 2013-6-6 17:10 编辑 ]

TOP

这个好像是内核的问题

LNMP付费问题排查/LNMP技术支持/Paypal信用卡代付/代购VPS,域名,软件等 QQ 503228080 旺旺 lzhenbao
军哥淘宝店铺
QQ/旺旺仅提供代购及付费代维/问题解决等服务,其他不回复!LNMP相关问题请在本论坛发帖,提问前先搜索,按https://bbs.vpser.net/thread-2555-1-1.html 要求反馈问题!

TOP

回复 2# 的帖子

然后用kernel-patch?
(然后这个内核真心不知道是啥= =

[ 本帖最后由 Sonic1997 于 2013-6-5 21:48 编辑 ]

TOP

回复 3# 的帖子

问问linode客服看哪个内核的支持,然后换过去

LNMP付费问题排查/LNMP技术支持/Paypal信用卡代付/代购VPS,域名,软件等 QQ 503228080 旺旺 lzhenbao
军哥淘宝店铺
QQ/旺旺仅提供代购及付费代维/问题解决等服务,其他不回复!LNMP相关问题请在本论坛发帖,提问前先搜索,按https://bbs.vpser.net/thread-2555-1-1.html 要求反馈问题!

TOP

CentOS's userspace tools are also incompatible with the connlimit module in our latest 3.x series kernels because the version of 'iptables' that is installed is too old:
//CentOS的用户空间工具在我们最新的3.x系列核心中与connlimit模块不兼容因为所安装的iptables版本太旧了:
-----
# iptables -V
iptables v1.4.7
-----

Please issue these commands, and again, remember that building from source means that this package will no longer be managed by your package management system (yum):
//输入以下指令,后面的懒得翻译,注意这会覆盖掉你的东西就行了
复制内容到剪贴板
代码:
yum update
rpm -e --nodeps iptables-1.4.7-9.el6.i686
rpm -e --nodeps iptables-ipv6-1.4.7-9.el6.i686
yum groupinstall 'Development Tools'
wget http://www.netfilter.org/projects/iptables/files/iptables-1.4.19.tar.bz2
tar jxvf iptables-1.4.19.tar.bz2
cd iptables-1.4.19
LDFLAGS="-L$PWD/libiptc/.libs" ./configure --prefix=/usr --exec-prefix= --bindir=/usr/bin --with-xtlibdir=/lib/xtables --with-pkgconfigdir=/usr/lib/pkgconfig --enable-libipq --enable-devel
make
make install
When the installation is complete, run "iptables -V" and you should see the following output:
//当你完成安装时,输入“iptables -V” 然后你会看到下面的内容
-----
iptables v1.4.19
-----

Now try to load that iptables rule:
//现在你可以用了

iptables -I FORWARD -p tcp --syn --dport 80 -m connlimit --connlimit-above 20 -j DROP

It should succeed with no error message. You can verify that the rule was loaded with either of these commands:
//下载应该能运行的了,你可以通过以下任意一个指令来验证你的规矩是否已经加载

iptables-save
iptables -L -n -v





搞定,感谢军哥提出指引&Linode客服

[ 本帖最后由 Sonic1997 于 2013-6-6 17:19 编辑 ]

TOP