一般來說,看了網路上很多教學,實際上,直接copy past,居然不能用…
後來找到debug方式, /system script> print from=script1
查了一下,發現它說語法有錯…這怎麼可能??!!
看youtube的做法直接,按方式打語法也錯!! 那我看到youtube成功的範例我是眼瞎了嗎?!!
最後很簡單,不要寫了!它改版後,script在檢查上肯定有很大的問題!
:for i from=20 to=22 do={ /queue simple add name=(“user_”.$i) target-addresses=(“192.168.5.”.$i) max-limit=64000/1000000 }
這是一個非常簡單的例子,但錯在 target-addresses,問題是所有的範例都是這樣啊!我試查一下,queue simple的輸出,是用target,不是target-addresses,所以改成target,但一樣錯!!
請問我怎麼知道正確的語法??放棄了!浪費時間在這個上面,直接用pspad改一份要的simple queue比較快,而且正確。
mikrotik看來也是有一些問題…
把語法export出來,改到 excel上,把先分拆成語法,把ip最後一碼用excel拉出來,最後把他全部複制到pspad,然後去把空格去掉,最後把完整的語法,全部直接past到mikrotik裡面,這樣不到,2分鐘就搞定了!
搞它的這個爛語法!快抓狂!哈````
通常一般常用的ip分享器,或是其他linux產品設定上,上下傳都蠻簡單的 mkirotik 也是linux產品,但他的bridge和global搞的問題很大
1、正常情況下,firewall是下iptable規則,但mikrotik的mangle也算是一個方式,prerouting和postrouting一般是用來加mark_packet,加上之後再處理…但上下傳流量怎麼抓?看了很多人的設定,有的是用prerouting和postrouting來抓,也有是用src和dst ip address,但這樣抓的流量是不正確的…因為我跟著設之後,才發現好像是錯的。
2、原本上下傳流量是用global-in、global-out來區分,真的算很簡單,很多設定可以設正確,但現在改成global,沒-in、-out…怎麼抓?
3、bridge模式也是不錯,但問題是看官方說明的圖示,基本上上述的處理都繞回去bridge,那又怎麼分上下傳流量?
==================================================================== 環境設定:ether1是wan,接固定ip:192.168.1.x,ether2~4是Lan使用,192.168.5.x,firewall有設在bridge,dhcp也設在bridge,ether1有srnat,192.168.1.x也有srnat
單獨很簡易方式測流量上下傳,到底怎麼設才能抓正確? 為什麼會有這問題,因為用內建的工具Torch才發現,基本上Interface:ether1的流量都是Src是Internet IP,Dst是Wan IP……而bridge1和ether2是一樣的Src是Lan ip、Dst是Internet IP…
那代表設定在ether1上的流量設定是完全不正常的,因為搞不清是誰上下載,全是Wan IP上下載。
那在bridge和ether2上算正常,看到Lan ip連到Internet那個IP,但Tx和Rx是倒過來,Rx應該是下載變成上傳,Tx上傳變下載,這樣就算了反正能抓到流量就行。但Tx、Rx設定在那?沒有這個設定,Qos沒這設定,怎麼設限制?simple queue是upload、download是怎麼對應我也搞不清,但它居然是正常的….上下傳設定好就正常,不用上下傳對調設。
測試方式:先不設限,大量上傳或下載就能搞的清楚,設定是要設那個
**simple queue是針對有人長期大量上下傳設限,有效的,很直接,但要先用Torch查查那ip。
queue tree要先mark_packet,結果prerouting和postrouting…無效,怎麼說,prerouting抓得到流量,但只限上傳或是tcp下載時上傳的回覆封包,那下載呢?不知…而postrouting抓不到或是跟有preouting一樣問題…我頭都大了,怎麼辦??? 到底去那找到真正上下傳流量,明明Torch在bridge和ether2有抓到正常的上傳下載的流量(雖然是相反),在ip firewall mangle和filter rules測試了老半天,最後才發現,原來要這樣設才會抓到真的流量。
測試方式:先大量下載,下幾百MB,然後去看mangle的rate、bytes和packets,有沒有流量,就知道設的方式是抓到下載,然後再大量上傳(ftp),同上,抓到怎麼設才會抓到上傳流量
**設優先權(priority)在quere tree設定,這是最理想,我最喜歡,但實際上網路滿時,這裡優先權全沒用了…所以要配合simple queue來抓可惡的人,把他單獨ip、強制、限制上下流量,才不會影響到別人…
怎麼抓上下流量:在ip fiewall mangle選chain:forward,再來針對下載是:dst ip address,上載是:src ip address,這兩個ip address都設Lan ip,所以懶的人在address list自己設範圍,基本上這樣設,能很準確的抓到某個ip的上下流量,並設定mark_packet。不用管interface。
建議每個人環境不同,所以最重要的是測試方式,抓出上下流量,怎麼設才能抓出來,抓出來後,才能做出正確的設定,按網路上copy的,基本上問題多多,所以要自己要測試,上一篇關於mikrotik qos那篇,設了可以用,但仔細觀查才發現…我都抓到上傳流量,下載根本沒抓到…..那篇的設定有設ether1之類都沒用,src和dst也是無用,但改了forward、把interface拿掉,仔細設src、dst就完全正確抓到上下傳。
我是真的搞不懂為什麼這麼奇怪,是我自己設錯還是我搞錯,不過基本上現在的設定完全ok了,雙qos管制。老外這樣設定為什麼能用,我也搞不懂…
最後mikrotik真的難倒我了,以為有linux多年經驗、居易、小峰等設備、Tomato等版本、企業用防火牆等實作,但在mikrotik下,手腳發軟…哈~~~ 這牌子MikroTik真的非常不適合給一般人用,非常不適合,但偏偏都是最便宜、功能最多、效能非常不錯的機器…穩定度、整合、省電比自行用pc、準系統架適合,但和untangle是兩碼子的事,對我來說…
OK,希望這篇對某些快被mikrotik搞死的人,又非要搞定Qos的人有一些提示用途。
PS:大量上傳下載流量時,要注意rate,一開始沒注意,以為有流量就算對,結果後來注意看才發現,下載都到15M/s了,rate才幾十至百K,才發現…這樣設是錯的,沒抓對流量,上傳也是一樣的道理。
PS2:http://wiki.mikrotik.com/wiki/Manual:Packet_Flow 明確指出Changes in RouterOS v6 :在Input下Quere Tree先,simple後;在Postrouting,Quere Tree先,simple後,Forward在中間…那在Input有動作嗎?因為設定是在Forward做mark_packet。另Dst、Src Nat都在Queue前後做…..那到底有沒有用?但實際上按現在的方式設定後,是有用的…搞不懂
http://forum.mikrotik.com/viewtopic.php?f=2&t=70106
if you have only one DHCP-Server you can do the following: /ip dhcp-server lease remove [find dynamic]
if you have several servers, you have to add additional filter to filter by server. /ip dhcp-server lease remove [find dynamic server=dhcp1]
最近使用心得,這種使用方式,在流量全滿是做不了QOS….它的Queue Tree是ok,但流量滿時,就算優先最低的,還是佔頻寬,最高的吃不到,所以 非常建議把Queue Tree和Simple Queues兩個都開,直接把每個ip設上Simple Queues,避免有人把頻寬佔滿。 這做法之後,就不用管那個人會多吃頻寬了。 Ether1是Wan,此法不用Simple Queues,用Queue Tree 參考網址: http://gregsowell.com/?p=4665 最重要 http://wiki.mikrotik.com/wiki/Basic_traffic_shaping_based_on_layer-7_protocols
queue tree
apr/21/2014 21:37:44 by RouterOS 6.11 software id = 7AF7-LQ1I /queue tree add disabled=yes max-limit=30k name=p2p_prerouting packet-mark=Qos_p2p_8_prerouting parent=global queue=default add disabled=yes max-limit=2M name=p2p_postouting packet-mark=Qos_p2p_8_postrouting parent=global queue=default add disabled=yes name=root_postouting packet-mark=Qos_root_1_postrouting parent=
global priority=1 queue=default add disabled=yes name=root_prerouting packet-mark=Qos_root_1_prerouting parent=
global priority=1 queue=default add max-limit=15M name=in parent=global add max-limit=1M name=out parent=global add limit-at=3M max-limit=15M name=http-in packet-mark=http-in parent=in priority=4 queue=default add limit-at=4M max-limit=15M name=streaming-video-in packet-mark=