找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 40130|回复: 42

在Openwrt上自定义QOS

  [复制链接]
发表于 2011-10-2 11:35 | 显示全部楼层 |阅读模式
很多人说OP的QOS不好用,开始我也是这么觉得的 。开了BT   PPS 之类的根本没法干别的 ,游戏就更别提了。

但是很多人像我一样, 有脱机下载或者NAS下载之类的,也或者想最大效率利用带宽,同时游戏,上网,看视频,开BT,迅雷。为了完成这个想法,经过一段时间的努力,查阅了N多的QOS资料,目标基本实现了。兴奋之余,把大致的实现方法介绍给大家,动手能力强的可以作为参考。要完成自定义QOS,需要先把tc,iptable, htb算法, opendpi , xt_recent 这些都搞清楚,起码基本的命令都会用。否则就看看热闹好了。
命令很多人都懂,我就主要讲下思路。tc的流量控制很准确,前提是要对tc,htb有足够的了解。htb的分类主要以openwrt原版qos为基础,上传增加一个第五类。iptables的设置,也是以openwrt的原版为基础,将l7-filter换成opendpi作七层识别,并作了一些小改动来符合我的需求。

                           上传
                            1:  root htb
                             |
                            1:1
            /          /            \
        1:10      1:20        1:3
                                /              \            \
                            1:30            1:40      1:50

tc qdisc add dev eth1 root handle 1: htb default 40
tc class add dev eth1 parent 1: classid 1:1 htb rate 58kbps ceil 58kbps  burst 5k cburst 5k
tc class add dev eth1 parent 1:1 classid 1:10 htb rate 10kbps ceil 58kbps  prio 1
tc class add dev eth1 parent 1:1 classid 1:20 htb rate 15kbps ceil 58kbps  prio 2
tc class add dev eth1 parent 1:1 classid 1:3 htb rate 15kbps ceil 45kbps
tc class add dev eth1 parent 1:3 classid 1:30 htb rate 10kbps ceil 45kbps  prio 3 burst 2k cburst 2k
tc class add dev eth1 parent 1:3 classid 1:40 htb rate 5kbps ceil 45kbps  prio 4
tc class add dev eth1 parent 1:3 classid 1:50 htb rate 5kbps ceil 45kbps  prio 5





这是上传500kbit带宽的分类情况, 1:10是游戏, 1:20是dns, tcp  syn,tcp ack ,ssh,QQ语音之类的,  1:30是网页、virtual**、代理、rdp,1:40是BT,迅雷,PPS和其他未分类,包大小小于300的流量,1:50是BT,迅雷,PPS和未分类,包大小大于300的流量。

下载也作了tc和iptable的配置,不过相对来说没那么重要,就不帖了。主要思路跟上传差不多,没用imq而是用了ifb模块,也就是上传和下载都在同一个interface(即出口)上整形。好像ifb是在iptable之前,具体有空测试一下,所以iptable对下行来说也不重要了,但对于七层识别还是有点用,所以也加上了,openwrt的原版QOS在iptable中是不对下行作mark的。

按这个速率设定来用的话,开下载的同时,游戏的延迟是可以保证的。当然最重要的是在iptable 上把流量用mark分好类,我的分类是按端口和七层识别同时用,比如22,80,53都可以按端口来设,虽然有些应用也会用这些端口,但一般没多大影响。除非有特意改端口的,有影响了,那可以都用七层识别来做。opendpi在七层识别方面还是不错的,openwrt的开发者在几个月前已经开始计划用opendpi换掉l7-filter,不知道最近进展如何。不过我们可以自己编译到openwrt里。

另外,很多QOS的设定都会推荐限制连接数,我没有做方面的限制,至少在我这里没有什么问题。测试3M下行,500k上行的时候迅雷开了3个种子,基本满速,上行还有富余,游戏延迟没问题,QQ语音同时连3个人流畅。 测试20M下行,1M上行的时候,迅雷开20个种子,下行不满速,上行已经满了,迅雷上传显示0,游戏延迟没问题,QQ语音同时连3个人流畅。

因为我玩DOTA经常上浩方,所以自己分析了浩方的数据包特征,CS,WAR3都能匹配,最近去11平台玩DOTA,也分析了下,可以匹配了。opendpi对PPS支持很好,QQ需要修改匹配方法。迅雷和风行这种,只是部分能有些特征包,已经足够了,可以配合recent来mark,要改recent模块。

本来想贴几个图,想想没什么意义。如果有人感兴趣,可以联系我,帮忙写个脚本。

最后贴下iptable的统计信息。其中war3的匹配都在下行里,这里看不到,帖子长度的问题,就不贴了。

上行:

Chain Default (2 references)
    pkts      bytes target     prot opt in     out     source               destination         
41447462 17211275535 CONNMARK   all  --  *      *       0.0.0.0/0            0.0.0.0/0           CONNMARK restore
11384650 1499982652 Default_ct  all  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x0
      34    23446 MARK       all  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x1 length 400:65535 MARK and 0x0
   24641 20134127 MARK       all  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x2 length 800:65535 MARK and 0x0
   37746  5394916 MARK       icmp --  *      *       0.0.0.0/0            0.0.0.0/0           MARK set 0x1
2077725 101041304 MARK       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           length 0:128 mark match !0x4 tcp flags:0x3F/0x02 MARK set 0x2
1418481 59188992 MARK       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           length 0:128 mark match !0x4 tcp flags:0x3F/0x10 MARK set 0x2
6699462 697530975 MARK       udp  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x0 length 0:65535 MARK set 0x4
  896620 621880446 MARK       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x0 length 0:65535 MARK set 0x4
2822843 3713061114 MARK       all  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x4 length 300:65535 MARK set 0x5

Chain Default_ct (1 references)
    pkts      bytes target     prot opt in     out     source               destination         
     379    18200 MARK       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x0 tcp multiport ports 22,53 MARK set 0x2
   27432  1704319 MARK       udp  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x0 udp multiport ports 22,53 MARK set 0x2
  144061  7137731 MARK       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x0 tcp multiport ports 20,21,25,80,110,443,993,995,5190,3389,3390,5900,1080,1194 MARK set 0x3
     364    23960 MARK       all  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x0 protocol HF MARK set 0x1
       1       45 MARK       all  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x0 protocol COUNTERSTRIKE MARK set 0x1
       0        0 MARK       all  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x0 protocol WARCRAFT3 MARK set 0x1
     966    51955 MARK       all  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x0 protocol PT11 MARK set 0x1
     174    31318 MARK       all  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x0 protocol QQ MARK set 0x2
     727   256830 MARK       all  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x0 protocol HTTP MARK set 0x3
     753   102156 MARK       all  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x0 protocol PPStream MARK set 0x4
       0        0 MARK       all  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x0 protocol PPLive MARK set 0x4
  683701 50272737 MARK       all  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x0 protocol Bittorrent MARK set 0x4
    4534   268934 MARK       all  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x0 protocol Thunder/Webthunder MARK set 0x8
  103919  7200135 MARK       all  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x0 recent: UPDATE seconds: 60 name: DEFAULT side:source port MARK set 0x4
    4534   268934 MARK       all  --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x8 recent: SET name: DEFAULT side:source port MARK set 0x4
11384650 1499982652 CONNMARK   all  --  *      *       0.0.0.0/0            0.0.0.0/0           CONNMARK save

评分

参与人数 4恩山币 +6 收起 理由
ewolf + 1 我OUT了,ifb模块是什么啊?
小标 + 1 期待楼主的脚本
fshjl + 1 精品文章
phantom-gy + 3 好帖!

查看全部评分

只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2011-10-2 12:04 | 显示全部楼层
利害,高手,牛B,强人
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2011-10-2 12:14 | 显示全部楼层
楼主这么强,放个脚本给大家试下啊 打击下TT
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2011-10-2 12:19 | 显示全部楼层
楼主很强啊,再说一点吧
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2011-10-2 12:57 | 显示全部楼层
利害,高手,牛B,强人
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2011-10-2 12:59 | 显示全部楼层
正需要这样的QOS   小包优先  保证网页的速度  至于PPS等的等级低一些。
要是楼主能开源脚本就好了。  弄个人性化点的界面 TT就受打击了
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2011-10-2 13:31 | 显示全部楼层
欢迎分享成功经验,有脚本更好。
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2011-10-2 17:28 | 显示全部楼层
mark

等楼主强文
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2011-10-2 18:48 | 显示全部楼层
正需要这样的QOS   小包优先  保证网页的速度  至于PPS等的等级低一些。
要是楼主能开源脚本就好了。  弄个人性化点的界面 TT就受打击了
jicheng12 发表于 2011-10-2 12:59


强烈支持啊,期待人性化点的界面早日面世
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2011-10-2 20:10 | 显示全部楼层
这个必须支持。
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2011-10-2 20:11 | 显示全部楼层
楼主放个脚本吧
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2011-10-2 20:34 | 显示全部楼层
期待脚本给大家试下啊
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2011-10-3 17:11 | 显示全部楼层
ifb不错
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2011-10-3 18:58 | 显示全部楼层
想打击TT,为时尚早,根本不是一个级别的
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
 楼主| 发表于 2011-10-4 13:10 | 显示全部楼层
有PM要脚本的,贴一下完整的脚本  ,供大家研究,可能需要安装一些模块后才能用。 但准确的分类也很重要,这不是一个脚本能解决的。目前还在研究一些http协议的P2P流量,这个对看网页有些影响。等东西成熟了,会做成安装包放出来。

3M下行,500K上行带宽。

insmod cls_u32
insmod em_u32
insmod act_connmark
insmod act_mirred
insmod sch_ingress
insmod cls_fw
insmod sch_htb
insmod sch_sfq
insmod sch_red
上行:
ifconfig eth1 up txqueuelen 5
tc qdisc del dev eth1 root 2> /dev/null > /dev/null
tc qdisc add dev eth1 root handle 1: htb default 40
tc class add dev eth1 parent 1: classid 1:1 htb rate 58kbps ceil 58kbps  burst 5k cburst 5k
tc class add dev eth1 parent 1:1 classid 1:10 htb rate 10kbps ceil 58kbps  prio 1
tc class add dev eth1 parent 1:1 classid 1:20 htb rate 15kbps ceil 58kbps  prio 2
tc class add dev eth1 parent 1:1 classid 1:3 htb rate 15kbps ceil 45kbps
tc class add dev eth1 parent 1:3 classid 1:30 htb rate 10kbps ceil 45kbps  prio 3 burst 2k cburst 2k
tc class add dev eth1 parent 1:3 classid 1:40 htb rate 5kbps ceil 45kbps  prio 4
tc class add dev eth1 parent 1:3 classid 1:50 htb rate 5kbps ceil 45kbps  prio 5
tc qdisc add dev eth1 parent 1:10 handle 100: sfq perturb 2 limit 36000
tc qdisc add dev eth1 parent 1:20 handle 200: sfq perturb 2 limit 36000
tc qdisc add dev eth1 parent 1:30 handle 300: red min 3116 max 9348 burst 3 avpkt 1500 limit 37392 probability 0.12 ecn
tc qdisc add dev eth1 parent 1:40 handle 400: red min 3116 max 9348 burst 3 avpkt 1500 limit 37392 probability 0.12 ecn
tc qdisc add dev eth1 parent 1:50 handle 500: red min 3116 max 9348 burst 3 avpkt 1500 limit 37392 probability 0.12 ecn
tc filter add dev eth1 parent 1: prio 1 protocol ip handle 1 fw flowid 1:10
tc filter add dev eth1 parent 1: prio 2 protocol ip handle 2 fw flowid 1:20
tc filter add dev eth1 parent 1: prio 3 protocol ip handle 3 fw flowid 1:30
tc filter add dev eth1 parent 1: prio 4 protocol ip handle 4 fw flowid 1:40
tc filter add dev eth1 parent 1: prio 5 protocol ip handle 5 fw flowid 1:50

下行
ifconfig ifb0 up txqueuelen 5
tc qdisc del dev ifb0 root 2> /dev/null > /dev/null
tc qdisc add dev ifb0 root handle 1: htb default 40
tc class add dev ifb0 parent 1: classid 1:1 htb rate 360kbps ceil 360kbps burst 50k cburst 50k
tc qdisc del dev eth1 ingress
tc qdisc add dev eth1 ingress
tc filter add dev eth1 parent ffff: protocol ip prio 1 u32 match u32 0 0 flowid 1:1 action connmark action mirred egress redirect dev ifb0
tc class add dev ifb0 parent 1:1 classid 1:10 htb rate 20kbps ceil 360kbps prio 1
tc class add dev ifb0 parent 1:1 classid 1:20 htb rate 50kbps ceil 360kbps prio 2
tc class add dev ifb0 parent 1:1 classid 1:3 htb rate 200kbps ceil 320kbps
tc class add dev ifb0 parent 1:3 classid 1:30 htb rate 100kbps ceil 320kbps prio 3 burst 50k cburst 50k
tc class add dev ifb0 parent 1:3 classid 1:40 htb rate 20kbps ceil 320kbps prio 4
tc qdisc add dev ifb0 parent 1:10 handle 100: sfq perturb 2 limit 223716
tc qdisc add dev ifb0 parent 1:20 handle 200: sfq perturb 2 limit 223716
tc qdisc add dev ifb0 parent 1:30 handle 300: red min 18643 max 55929 burst 20 avpkt 1500 limit 223716 probability 0.12 ecn
tc qdisc add dev ifb0 parent 1:40 handle 400: red min 18643 max 55929 burst 20 avpkt 1500 limit 223716 probability 0.12 ecn
tc filter add dev ifb0 parent 1: prio 1 protocol ip handle 1 fw flowid 1:10
tc filter add dev ifb0 parent 1: prio 2 protocol ip handle 2 fw flowid 1:20
tc filter add dev ifb0 parent 1: prio 3 protocol ip handle 3 fw flowid 1:30
tc filter add dev ifb0 parent 1: prio 4 protocol ip handle 4 fw flowid 1:40

iptables :
+ iptables -t mangle -F
+ iptables -t mangle -X
+ insmod ipt_multiport
+ insmod ipt_CONNMARK
+ insmod xt_opendpi
+ insmod ipt_length
+ iptables -t mangle -N Default
+ iptables -t mangle -N Default_ct
+ iptables -t mangle -A Default_ct -m mark --mark 0 -m tcp -p tcp -m multiport --ports 22,53 -j MARK --set-mark 2
+ iptables -t mangle -A Default_ct -m mark --mark 0 -p udp -m udp -m multiport --ports 22,53 -j MARK --set-mark 2
+ iptables -t mangle -A Default_ct -m mark --mark 0 -p tcp -m tcp -m multiport --ports 20,21,25,80,110,443,993,995,5190,3389,3390,5900,1080,1194 -j MARK --set-mark 3
+ iptables -t mangle -A Default_ct -m mark --mark 0 -m opendpi --hf -j MARK --set-mark 1
+ iptables -t mangle -A Default_ct -m mark --mark 0 -m opendpi --qq -j MARK --set-mark 2
+ iptables -t mangle -A Default_ct -m mark --mark 0 -m opendpi --http -j MARK --set-mark 3
+ iptables -t mangle -A Default_ct -m mark --mark 0 -m opendpi --ppstream -j MARK --set-mark 4
+ iptables -t mangle -A Default_ct -m mark --mark 0 -m opendpi --pplive -j MARK --set-mark 4
+ iptables -t mangle -A Default_ct -m mark --mark 0 -m opendpi --bittorrent -j MARK --set-mark 4
+ iptables -t mangle -A Default_ct -m mark --mark 0 -m opendpi --thunder -j MARK --set-mark 4
+ iptables -t mangle -A Default_ct -j CONNMARK --save-mark
+ iptables -t mangle -A Default -j CONNMARK --restore-mark
+ iptables -t mangle -A Default -m mark --mark 0 -j Default_ct
+ iptables -t mangle -A Default -m mark --mark 1 -m length --length 400: -j MARK --set-mark 0
+ iptables -t mangle -A Default -m mark --mark 2 -m length --length 800: -j MARK --set-mark 0
+ iptables -t mangle -A Default -p icmp -j MARK --set-mark 1
+ iptables -t mangle -A Default -p tcp -m length --length :128 -m mark ! --mark 4 -m tcp --tcp-flags ALL SYN -j MARK --set-mark 2
+ iptables -t mangle -A Default -p tcp -m length --length :128 -m mark ! --mark 4 -m tcp --tcp-flags ALL ACK -j MARK --set-mark 2
+ iptables -t mangle -A Default -m mark --mark 0 -p udp -m length --length 0: -j MARK --set-mark 4
+ iptables -t mangle -A Default -m mark --mark 0 -p tcp -m length --length 0: -j MARK --set-mark 4
+ iptables -t mangle -A OUTPUT -o eth1 -j Default
+ iptables -t mangle -A FORWARD -o eth1 -j Default
+ iptables -t mangle -D Default_ct 10
+ iptables -t mangle -I Default_ct 10 -m mark --mark 0x0 -m opendpi --thunder -j MARK --set-xmark 0x8/0xffffffff
+ iptables -t mangle -I Default_ct 11 -m mark --mark 0x0 -m recent --update --seconds 60 --name DEFAULT --rsource --rport -j MARK --set-xmark 0x4/0xffffffff
+ iptables -t mangle -I Default_ct 12 -m mark --mark 0x8 -m recent --set --name DEFAULT --rsource --rport -j MARK --set-xmark 0x4/0xffffffff
+ iptables -t mangle -N Default_dn
+ iptables -t mangle -N Default_ct_dn
+ iptables -t mangle -A Default_ct_dn -m mark --mark 0 -m tcp -p tcp -m multiport --ports 22,53 -j MARK --set-mark 2
+ iptables -t mangle -A Default_ct_dn -m mark --mark 0 -p udp -m udp -m multiport --ports 22,53 -j MARK --set-mark 2
+ iptables -t mangle -A Default_ct_dn -m mark --mark 0 -p tcp -m tcp -m multiport --ports 20,21,25,80,110,443,993,995,5190,3389,3390,5900,1080,1194 -j MARK --set-mark 3
+ iptables -t mangle -A Default_ct_dn -m mark --mark 0 -m opendpi --hf -j MARK --set-mark 1
+ iptables -t mangle -A Default_ct_dn -m mark --mark 0 -m opendpi --qq -j MARK --set-mark 2
+ iptables -t mangle -A Default_ct_dn -m mark --mark 0 -m opendpi --http -j MARK --set-mark 3
+ iptables -t mangle -A Default_ct_dn -m mark --mark 0 -m opendpi --ppstream -j MARK --set-mark 4
+ iptables -t mangle -A Default_ct_dn -m mark --mark 0 -m opendpi --pplive -j MARK --set-mark 4
+ iptables -t mangle -A Default_ct_dn -m mark --mark 0 -m opendpi --bittorrent -j MARK --set-mark 4
+ iptables -t mangle -A Default_ct_dn -m mark --mark 0 -m opendpi --thunder -j MARK --set-mark 4
+ iptables -t mangle -A Default_ct_dn -j CONNMARK --save-mark
+ iptables -t mangle -A Default_dn -j CONNMARK --restore-mark
+ iptables -t mangle -A Default_dn -m mark --mark 0 -j Default_ct_dn
+ iptables -t mangle -A Default_dn -m mark --mark 1 -m length --length 400: -j MARK --set-mark 0
+ iptables -t mangle -A Default_dn -m mark --mark 2 -m length --length 800: -j MARK --set-mark 0
+ iptables -t mangle -A Default_dn -p icmp -j MARK --set-mark 1
+ iptables -t mangle -A Default_dn -p tcp -m length --length :128 -m mark ! --mark 4 -m tcp --tcp-flags ALL SYN -j MARK --set-mark 2
+ iptables -t mangle -A Default_dn -p tcp -m length --length :128 -m mark ! --mark 4 -m tcp --tcp-flags ALL ACK -j MARK --set-mark 2
+ iptables -t mangle -A Default_dn -m mark --mark 0 -p udp -m length --length 0: -j MARK --set-mark 4
+ iptables -t mangle -A Default_dn -m mark --mark 0 -p tcp -m length --length 0: -j MARK --set-mark 4
+ iptables -t mangle -A INPUT -i eth1 -j Default_dn
+ iptables -t mangle -A FORWARD -i eth1 -j Default_dn
+ iptables -t mangle -I Default_ct_dn 11 -m mark --mark 0x0 -m recent --update --seconds 60 --name DEFAULT --rdest --rport -j MARK --set-xmark 0x4/0xffffffff
root@OpenWrt:~#

点评

请问大侠您的脚本怎么导入啊?,我用winscp导入命令不行啊,insmod cls_u32 这第一句都倒不进去,我会ROS的mangle编辑,但是openwrt还不会,请多多教程,希望可以好好交流一下!谢谢了!  详情 回复 发表于 2014-11-22 15:55
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-10-4 02:27

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com

快速回复 返回顶部 返回列表