pcc腳本
⑴ ROS VLAN虛擬撥號PCC負載均衡問題
負載均衡有2中模式,1中是NTH,另外一種是PCC。問題估計出來,標記上面。
正常是先標記,再匹配路由,最後是根據路由選擇出口。另外還要注意迴流。比較復雜,
⑵ ros 5 adsl 掉線需要修改pcc嗎
#===================================================================================
# 多線ADSL掉線自動修改PCC參數-腳本 V1.1b20111106 By 塔城陳強
#===================================================================================
# ROS版本 3.30
# 思路: 自動判斷 ADSL 匯流排路數,自動判斷 正常ADSL線路數
# 根據對比,如果正常線路數與匯流排路數不一致,則更改PCC參數,
# 如果 一致,則恢復原有的PCC參數。
# 對 ADSL線路 名稱 沒有特定要求。
# 對 Mangle 標記連接和標記路由 名稱 沒有特定要求。
# 要求:所有的ADSL線路都要做PCC
# 變數 pppoeclientAllNum ADSL 匯流排路數量
# 變數 pppoeclientRunNum 實際運行正常 的 ADSL 線路數量
# 變數 pppoeclientName 實際運行正常 的 ADSL 名
# 變數 z 線路正常後禁止掉的連接標記數。
{
:local pppoeclientAllNum
:local pppoeclientRunNum
:local pppoeclientName
:local z 0
#得到 ADSL 匯流排路數,包括禁用的,未撥號的。
:set pppoeclientAllNum [:len [/interface pppoe-client find ]]
:log info ("pppoeclientAllNum".$pppoeclientAllNum)
#得到 ADSL 正常線路數。
:set pppoeclientRunNum [:len [/interface pppoe-client find running=yes]]
:log info ("pppoeclientRunNum".$pppoeclientRunNum)
#正常線路數<匯流排路數
:if ($pppoeclientRunNum < $pppoeclientAllNum) do={
#用一個循環來修改PCC
:for ii from=0 to=($pppoeclientAllNum-1) do={
:log info ("ii".$ii)
#如果ii的值<=(正常線路數-1) (因為ii從0開始的),則修改PCC 連接標記及路由標記
:if ($ii<=($pppoeclientRunNum-1)) do={
#修改 PCC值
/ip firewall mangle set [find per-connection-classifier~("/".$ii."\$")] \
per-connection-classifier=("both-addresses:".$pppoeclientRunNum."/".$ii) \
comment=("PCC" . $pppoeclientRunNum . "-" . $ii) \
disable=no
#修改PCC路由標記
/ip firewall mangle set [find action="mark-routing" connection-mark=[/ip firewall mangle get [find per-connection-classifier~("/".$ii."\$")] new-connection-mark ]] disable=no
:log warning ("both-addresses:".$pppoeclientRunNum."/".$ii)
#如果ii的值>(正常線路數-1) (因為ii從0開始的),則把餘下的 PCC 連接標記及路由標記 禁止掉。
} else={
/ip firewall mangle set [find per-connection-classifier~("/".$ii."\$")] disable=yes
/ip firewall mangle set [find action="mark-routing" connection-mark=[/ip firewall mangle get [find per-connection-classifier~("/".$ii."\$")] new-connection-mark ]] disable=yes
:log warning ("both-addresses:".$pppoeclientAllNum."/".$ii."disable")
}
}
}
#正常線路數=匯流排路數
:if ($pppoeclientRunNum = $pppoeclientAllNum) do={
#判斷 禁止 的連接標記數,如果為0則為正常,如果不為0,則修改所有的PCC值。
:set z [:len [/ip firewall mangle find action="mark-connection" disabled=yes chain=prerouting]]
:if ($z>0) do={
#通過循環,把所有的PCC連接標記和路由標記全部修改。
:for ii from=0 to=($pppoeclientRunNum-1) do={
#修改 PCC值
/ip firewall mangle set [find per-connection-classifier~("/".$ii."\$")] per-connection-classifier=("both-addresses:".$pppoeclientRunNum."/".$ii) comment=("PCC" . $pppoeclientRunNum . "-" . $ii) disable=no
#修改PCC路由標記
/ip firewall mangle set [find action="mark-routing" connection-mark=[/ip firewall mangle get [find per-connection-classifier~("/".$ii."\$")] new-connection-mark ]] disable=no
:log warning ("both-addresses:".$pppoeclientRunNum."/".$ii)
}
}
}
轉載,僅供參考。
⑶ 壇子里有沒有PPPOE+PCC多線的限速腳本啊
佛光的那個單線多線的腳本就是可以用的,俺一直在用 查看原帖>>
⑷ 6條電信ADSL,不同網關,一條2M五條4M,上行都一樣, 怎麼做pcc負載
你好:
1、首先劃分VLAN,腳本如下:
[admin@MikroTik] > :for i from=2 to=7 do= {interface vlan add name=("vlan".$i) vlan-id=$i interface=ether2-wan }
2、然後添加PPPOE撥號(先添加撥號再手動輸入 每個AD的帳號和密碼,6條AD設置還是要花點時間了),腳本如下:
[admin@MikroTik] > :for i from=2 to=7 do= {interface pppoe-client add name=("pppoe-out".$i) user=$i password=$i interface=("vlan".$i)}
3、我們這里採用PCC的負載均衡,在ip firewall mangle里添加相應的PCC規則,通過一些腳本添加PCC的規則,注意:如果PPPoE客戶端撥號沒有成功,那麼添加的規則則為紅色的,撥號成功後自動正常
[admin@MikroTik] > :for i from=2 to=7 do={/ip firewall mangle add chain=input action=mark-connection new-connection-mark=conn1 in-interface=("pppoe-out".$i)}
4.然後標記路由讓從哪個介面進來的數據就從哪個介面出去:
[admin@MikroTik] > :for i from=2 to=7 do= {ip firewall mangle add chain=output connection-mark=("conn".$i) action=mark-routing new-routing-mark=("rout".$i)}
[admin@MikroTik] >
5.然後將所有內網出來的數據通過pcc的both-addresses分成40分並標記連接和路由:
[admin@MikroTik] > :for i from=2 to=7 do= {/ip firewall mangle add chain=prerouting src-address-list=lan-add action=mark-connection new-connection-mark=("conn".$i) per-connection-classifier=("both-addresses:40/".$i) comment=$i{... /ip firewall mangle add chain=prerouting src-address-list=lan-add action=mark-routing new-routing-mark=("rout".($i-2)) connection-mark=("conn".$i)}
6.為每個路由標記添加路由並添加pppoe-out41為默認路由:
[admin@MikroTik] > :for i from=2 to=7 do= {ip route add dst-address=0.0.0.0/0 gateway=("pppoe-out".$i) routing-mark=("rout".$i)}
[admin@MikroTik] >ip routed add dst-address=0.0.0.0/0 gateway=pppoe-out41
7.最後做NAT偽裝,一般最好是對每個出口進行偽裝:
[admin@MikroTik] > ip firewall nat add chain=srcnat action=masquerade
希望我的回答對您有所幫助,如有疑問,歡迎繼續咨詢我們。
⑸ 一個ros,如何做基於80埠pcc,然後其餘的也做pcc
先標記連接包。mark Router時選擇連接包然後把pcc一起做好。pcc不一定要做到連接那。Ros可以靈活使用的。你可以看一下我發的9月18號腳本。你要的功能都有
⑹ ROS 雙線固定IP,相同網關,怎麼做負載或者分流!
ROS 電信兩條光纖線路固定IP,同網關,負載或分流腳本如下:
1、首先劃分VLAN(我們這里是從2開始排序的)
[admin@MikroTik] > :for i from=2 to=41 do= {interface vlan add name=("vlan".$i) vlan-id=$i interface=ether2-wan }
2、然後添加PPPOE撥號(先添加撥號再手動輸入 每個AD的帳號和密碼,40條AD設置還是要花點時間了),腳本如下:
[admin@MikroTik] > :for i from=2 to=41 do= {interface pppoe-client add name=("pppoe-out".$i) user=$i password=$i interface=("vlan".$i)}
3、我們這里採用PCC的負載均衡,在ip firewall mangle里添加相應的PCC規則,通過一些腳本添加PCC的規則,注意:如果PPPoE客戶端撥號沒有成功,那麼添加的規則則為紅色的,撥號成功後自動正常
[admin@MikroTik] > :for i from=2 to=41 do={/ip firewall mangle add chain=input action=mark-connection new-connection-mark=conn1 in-interface=("pppoe-out".$i)}