免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: ShadowStar
打印 上一主题 下一主题

[网络管理] IPP2P模块修改版,最新0.99.16 [复制链接]

论坛徽章:
0
481 [报告]
发表于 2008-07-10 15:00 |只看该作者
cat: /usr/src/kernels/2.6.20-1.2320.fc5-i686/include/linux/Makefile: No such file or directory
cat: /usr/src/kernels/2.6.20-1.2320.fc5-i686/include/linux/Makefile: No such file or directory
Makefile:36: You need to install iptables sources and maybe set IPTABLES_SRC
ld -O3 -Wall -I/usr/src/kernels/2.6.20-1.2320.fc5-i686/include/linux/include -c ipt_ipp2p.c -D__KERNEL__ -DMODULE -DMODVERSIONS
ld: unrecognized option '-Wall'
ld: use the --help option for usage information
make: *** [ipt_ipp2p.o] Error 1
还是这个错误啊

论坛徽章:
0
482 [报告]
发表于 2008-07-10 16:53 |只看该作者
原帖由 haomany 于 2008-7-10 15:00 发表
cat: /usr/src/kernels/2.6.20-1.2320.fc5-i686/include/linux/Makefile: No such file or directory
cat: /usr/src/kernels/2.6.20-1.2320.fc5-i686/include/linux/Makefile: No such file or directory
Mak ...



看看提示。

论坛徽章:
0
483 [报告]
发表于 2008-07-10 17:40 |只看该作者

回复 #481 banevv 的帖子

cat: /usr/src/kernels/2.6.20-1.2320.fc5-i686/include/linux/Makefile: No such file or directory
cat: /usr/src/kernels/2.6.20-1.2320.fc5-i686/include/linux/Makefile: No such file or directory
Makefile:36: You need to install iptables sources and maybe set IPTABLES_SRC
ld -O3 -Wall -I/usr/src/kernels/2.6.20-1.2320.fc5-i686/include/linux/include -c ipt_ipp2p.c -D__KERNEL__ -DMODULE -DMODVERSIONS
ld: unrecognized option '-Wall'
ld: use the --help option for usage information
make: *** [ipt_ipp2p.o] Error 1

论坛徽章:
0
484 [报告]
发表于 2008-07-10 21:39 |只看该作者
哎 还是我的问题啊  /USR/SRC 下面没有IPTABLES的文件啊 这个怎么指向的 我是直接在iptables里面 make && make install 安装的 !  各位 感激不尽啊~

论坛徽章:
17
2015年辞旧岁徽章
日期:2015-03-03 16:54:152017金鸡报晓
日期:2017-02-08 10:39:422017金鸡报晓
日期:2017-01-10 15:19:56JAVA
日期:2016-11-01 13:25:46C
日期:2016-10-25 16:01:4715-16赛季CBA联赛之八一
日期:2016-06-21 23:38:0815-16赛季CBA联赛之山东
日期:2016-05-12 12:49:54IT运维版块每日发帖之星
日期:2016-04-20 06:20:00IT运维版块每日发帖之星
日期:2016-03-22 06:20:00黄金圣斗士
日期:2015-11-24 10:43:13IT运维版块每日发帖之星
日期:2015-08-25 06:20:002015亚冠之德黑兰石油
日期:2015-08-22 22:55:54
485 [报告]
发表于 2008-07-14 14:02 |只看该作者
公司必须开80,443口,skype又用这两个口,skype的ip服务器地址封了100多个还是能上. 请问用这个可以封 skype 吗?

论坛徽章:
0
486 [报告]
发表于 2008-07-14 16:11 |只看该作者
原帖由 ccjsj1 于 2008-7-14 14:02 发表
公司必须开80,443口,skype又用这两个口,skype的ip服务器地址封了100多个还是能上. 请问用这个可以封 skype 吗?

不能,skype 使用加密协议传输,随机端口

论坛徽章:
0
487 [报告]
发表于 2008-07-16 11:26 |只看该作者
原帖由 banevv 于 2008-7-9 11:45 发表
迅雷开5个任务 开始的几分钟(大约10分钟)能够正常封掉 迅雷提示不能找到候选资源
但是10分钟以后 所有的任务都开始找到候选资源 并开始正常下载
哪位遇到过这样的问题 ?
有没有解决的办法呢?

经过向ShadowStar牛人请教,在ShadowStar的耐心指点,热心帮助下该问题已解决。现将过程与大家分享。
开迅雷测试:屏蔽的效果不是很稳定。大部分的时候都可以正常封掉
但是偶尔会连接并且下载。特别是如果同时开多个任务,过大概10
分钟左右,就会看到正常连接和下载。经抓包分析,有一些连接具有
新的特征,将新的特征码加入ipp2p源码中,修改xunlei函数中特征
码部分如下:
if ( (*t < 0x40) && (*(t+1) == 0x00) && get_u16(t,2) == __constant_htons(0x0000) && (*(t+5) == 0x00 || *(t+5) == 0x01) && get_u16(t,6) == __constant_htons(0x0000) && (get_u32(t,8) == (payload+plen-t-12)) ) return (IPP2P_XUNLEI *100 + 1);
重新编译加载ipp2p模块。
再次测试,发现新的特征码可以完全屏蔽最新版本的迅雷。
红色部分为新的特征码。

[ 本帖最后由 banevv 于 2008-7-16 11:28 编辑 ]

论坛徽章:
0
488 [报告]
发表于 2008-07-16 12:18 |只看该作者

2.6.24内核1.4.0iptables下编译成功!

还是要感谢ShadowStar的帮助,以及73楼的兄弟。
把过程贴出来 希望能帮助有需要的人
2.6.24.7内核,1.4.0iptables下成功编译加载ipp2p
ipp2p版本为0.99.15,其中关于迅雷的特征码已更新如下。
if ( (*t < 0x40) && (*(t+1) == 0x00) && get_u16(t,2) == __constant_htons(0x0000) && (*(t+5) == 0x00 || *(t+5) == 0x01) && get_u16(t,6) == __constant_htons(0x0000) && (get_u32(t, == (payload+plen-t-12)) ) return (IPP2P_XUNLEI *100 + 1);
下载2.6.24.7的内核源码,1.4.0的iptables
编译定制内核:
tar zxvf linux-2.6.24.7.tar.gz
  cd linux-2.6.24.7/
  make menuconfig   。
  make bzImage
  make modules
  make modules_install
  make install
  vi /etc/grub.conf    将新内核设置为默认启动项。
  reboot            重启系统
  uname -r          查看新内核版本为:2.6.24.7
编译安装iptables1.4.0
bzip2 -d iptables-1.4.0.tar.bz2
  tar xvf iptables-1.4.0.tar
  cd iptables-1.4.0/
  make KERNEL_DIR=/usr/src/linux-2.6.24.7
  make install KERNEL_DIR=/usr/src/linux-2.6.24.7
  iptables          查看iptables版本为1.4.0
编译加载ipp2p(这个步骤一定会出现一些问题,是新版本的内核和iptabels的改变导致的)
首先修改Makefile,编译
tar zxvf ipp2p-0.99.15.tar.gz
   cd ipp2p-0.99.15/
   vi Makefile        修改kernel_dir为/usr/src/linux-2.6.24.7
   make
如果完全按照上面的步骤操作,编译的时候遇到的第一个错误应该
是这样的:图一

这是因为因为引用了iptables1.4.0的头文件造成的。这里需要用系统的ip_tables.h来替换iptbales1.4.0的ip_tables.h:
拷贝/usr/include/linux/netfilter_ipv4下的ip_tables.h到/usr/src/iptables-1.4.0/include/netfilter_ipv4/下覆盖原来的。
之前最好将原来的改个名字备份。
然后重新编译,make clean;   make
会看到如下的警告信息: 图二
这是版本差异造成的,需要修改代码:
修改libipt_ipp2p.c
找到报警的行:375,376,378,379
参考系统的libxt_mark.c修改相关代码如下:
static void
-init(struct ipt_entry_match *m, unsigned int *nfcache)
+init(struct xt_entry_match *m)
{
     struct ipt_p2p_info *info = (struct ipt_p2p_info *)m->data;
-    *nfcache |= NFC_UNKNOWN;
+//    *nfcache |= NFC_UNKNOWN;
  /*init the module with default values*/
     info->cmd = 0;
     info->debug = 0;
}

static int
parse(int c, char **argv, int invert, unsigned int *flags,
-       const struct ipt_entry *entry,
-       unsigned int *nfcache,
+       const void *entry,
        struct xt_entry_match **match)
{
     struct ipt_p2p_info *info = (struct ipt_p2p_info *)(*match)->data;
static void
-print(const struct ipt_ip *ip,
+print(const void *ip,
         const struct xt_entry_match *match,
        int numeric)
{
static void
-save(const struct ipt_ip *ip, const struct iptt_entry_match *match)
+save(const void *ip, const struct xt_entry_match *match)
{
   struct ipt_p2p_info *info = (struct ipt_p2p_info *)match->data;
重新编译,make clean          make
成功编译!
经加载测试,能够屏蔽最新版本的迅雷下载。

[ 本帖最后由 banevv 于 2008-7-16 12:59 编辑 ]

ipp2p1.jpg (39.51 KB, 下载次数: 32)

ipp2p1.jpg

ipp2p2.jpg (30.8 KB, 下载次数: 23)

ipp2p2.jpg

论坛徽章:
0
489 [报告]
发表于 2008-07-16 13:35 |只看该作者
如果迅雷已经开始下载了  这个时候如果再将iptables -A FORWARD -m IPP2P --xunlei -j DROP规则添加上去 是不能够阻断迅雷的,并且资源也没有减少,这又是什么原因呢?

但是如果在迅雷开启之前把规则添加上去,然后打开迅雷这个时候是找不到任何资源

论坛徽章:
0
490 [报告]
发表于 2008-07-16 19:40 |只看该作者
呵呵,多谢楼上的楼上。正想改呢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP