請問Linux_XP大大,巴西2.2.72版的排程功能,要怎樣設定呼叫已經設定好的Profile 設定檔呢?因為我想早上設定QOS內容與晚上設定的QOS不同,因為我們同學的生活習性不一樣,有夜間部跟白天部,如果把最大頻寬設定的太高,有些人整天都不關機的,很容易造成小銀狼呆掉,如果設定太低,又會造成早上根本用不了多少頻寬,也是浪費!
請問Linux_XP大大,巴西2.2.72版的排程功能,要怎樣設定呼叫已經設定好的Profile 設定檔呢?因為我想早上設定QOS內容與晚上設定的QOS不同,因為我們同學的生活習性不一樣,有夜間部跟白天部,如果把最大頻寬設定的太高,有些人整天都不關機的,很容易造成小銀狼呆掉,如果設定太低,又會造成早上根本用不了多少頻寬,也是浪費!
此文章於 2006-03-17 10:22 PM 被 jerry_tai2001 編輯。
有兩個方法,可以自由選擇,各有優缺點作者:jerry_tai2001
第一種方法
------------------------------------------------
現在有三個檔:
1./etc/rc.d/rc.local
這個檔本來就存在,是「開機時會自動執行一次」的檔
2./etc/qos-day.sh
3./etc/qos-night.sh
這兩個檔,是自己建立的
檔名只是一個參考,可依照喜好自訂,方便識別為佳
顧名思義,day 指的是白天,night 指的是夜間
也就是說,有兩組 QoS 設定檔的意思
(註:一定要放/etc,因為coyote只有這個目錄的檔案在備份時會被存儲)
然後在排程的地方,「指令」空格的地方
直接填:/etc/qos-day.sh 或 /etc/qos-night.sh
這樣就可以了
例如排程18點時,指令/etc/qos-night.sh
那麼它就會自動換到夜間的QoS 的設定
說明:
Linux 中的 shell script 本身就是可執行檔,也是指令
類似 windows 系統中的 .bat 自動執行批次檔
只是 shell script 的功能更強
至於強在哪裡,待會第二種方法會說明
具體作法:
1.建立那個兩個檔
在 web管理介面中,[配置檔]-[編輯任意檔]
輸入檔名 (含完整路徑)
因為該檔案原先不存在
打開時第一行會有說找不到檔案的文字
請把該行清除掉
2.貼上你的 QoS 的配置
3.按[ok],按左邊菜單的「立即存檔」
4.到終端機模式下,把自行建立的那兩個檔,權限改成可執行
註:
Linux 系統的附檔名只是參考,檔案可不可執行是看權限
權限若為可執行,不管檔案名稱是啥,皆可執行
也就是說該檔案會變成指令
指令:
chmod +x /etc/qos-day.sh
chmod +x /etc/qos-night.sh
5.到這個步驟,現在你有兩組 QoS 設定檔了
接著設定排程,時間隨高興怎麼定
指令的空格,就是那兩個檔名 (包含完整路徑)
注意事項:
/etc/rc.d/rc.local 開機自動批次執行檔
不要忘記了,也要有一組 QoS
因為排程是指定的時間到了才會執行
但開機或重開機是例外情況
這第一種方法,優點是簡單
缺點是開機時,不會自動判斷又要那一組QoS
-----------------------------------------------------
第二種方法
-----------------------------------
第二種方法,是要改良第一種方法的缺點
一開機就會自動判斷需要執行那一組 QoS
當然這一定得靠自己寫程式
所以第二種方法的缺點是會比較複雜
檔案:只有一個 /etc/rc.d/rc.local
目標:具有自動判斷功能,程式會檢查現在時間,如果現在是白天,就執行白天的QoS,否則執行夜間的QoS。
白天和夜間的定義 (為簡化採用24H制)
白天:6~18 時
夜間:18~6時
前面提到 Linux 的 shell script
雖與 windows 的 .bat 很類似
但 shell script 比較強,那麼是強在哪裡呢?
強在它本身其實就是程式語言
是可以寫應用程式的
若對shell script 程式設計有興趣
請自行上網找資料,或買書來看,這邊就不說明了
shell scirpt 撰寫範例參考:
這份 shell script 只是一個範例參考語法:#!/bin/sh # 自動判斷時間,依照白天和夜間的不同,各自執行不同的敘述的 shell script # ver 0.1 2006/03/17,測試環境: BrazilFW 2.6 版 # 取出現在時間的小時部份 (24H制) # Coyote 沒有 awk 指令,所以取字串時採用 sed + cut 方式 CLOCK=`date | sed 's/ /#/g' | cut -d "#" -f 4 | cut -d ":" -f 1` # 判斷現在時間,是白天,還是夜間 # 如果小時低於18,「並且」高於等於 6,則現在是白天 if [ $CLOCK -lt 18 ] ; then if [ $CLOCK -ge 6 ] ; then NOW="day" fi fi # 如果小時高於等於 18,「或者」小於 6,則現在是夜間 [ $CLOCK -ge 18 ] && NOW="night" [ $CLOCK -lt 6 ] && NOW="night" # 自動照白天(day) 或 夜間 (night),執行各自的敘述段 # 白天的話,就執行第一段。否則必為夜間,就執行第二段 if [ $NOW = "day" ] ; then echo "Now is day!" # 將「白天」要執行的敘述區段,插在這裡下方 else echo "Now is night!" # 將「夜間」要執行的敘述區段,插在這裡下方 fi
它是無法直接使用的
使用前要先修改,才能符合你的環境
具體要改的地方只有兩個:
# 將「白天」要執行的敘述區段,插在這裡下方
# 將「夜間」要執行的敘述區段,插在這裡下方
白天和夜間,應該會有兩組 QoS 的設定
把它們插進去就行了
----------------------------------------------------
在 web 管理介面,設定排成時
指令的空格,就是填 /etc/rc.d/rc.local
此 scipt 具有自動判斷時間功能
會依照時間,自動執行「白天」或「夜間」的敘述區段
關於白天或夜間的定義
如果不是上面那樣的話,數字請自行更改
我把coyote安裝在CF卡開機後,出現以下錯誤訊息
Kernel panic : No init found.
Try passing init = option to kernel
不知道是什麼問題呢@@
試了兩台電腦都是這個訊息...
想請問大家有沒有解決方法呢,謝謝
第一個方法比較簡單多了!
就是三個QOS敘述,開機用跟時間到用哪一個而已!
不過因為我是用WEB界面設定QOS的,所以手動寫設定檔還要花一些時間摸索,
L_XP大大真是有夠厲害...謝謝啦!
作者:rushoun
---------------------------------
各位前輩您好
我第一次也用您所述方法
但網路一直無法正常運作
我改用下述方法:
網卡的兩條線和小烏龜的那一條線全接在一個swHUB上
這樣全家五台電腦就都可以上網了
所以想請問前輩您的接法是否需要使用到跳線?
僅此,感謝各位前輩辛苦教學
中華民國有您們如此熱心,一定會更進步.
我的小銀狼的紀錄,都會有這樣的情形
請問有人知道嗎...???
謝謝!!
brazilfw authpriv.info dropbear[2837]: Child connection from 210.3.10.51:44824
brazilfw authpriv.info dropbear[2837]: exit before auth: Failed to get remote version
Mar 22 19:00:40 brazilfw authpriv.info dropbear[2838]: Child connection from 210.3.10.51:43939
Mar 22 19:00:40 brazilfw authpriv.info dropbear[2838]: exit before auth: Disconnect received
再請問一個問題
楓之谷,可以擋嗎...??
謝謝
請問 linux_xp 兄
您第一篇內的付檔
mrtg.zip 是否有損壞,無法解壓縮耶
這種接法不太正確作者:n5998744
因為 Client端電腦,有機會不透過 Coyote 直接上網
那麼便不會受到管制,防火牆和頻寬管理將形同虛設
正確的接法應如下圖所示:
區網內的 Client端電腦,不管願不願意,想上網只有透過 Coyote 一途
換句話說,Coyote 是總源頭,唯一的閘道 (gateway)
這樣子才能確保頻寬管制的效果,不會有漏洞或者漏網之魚
是否需要跳線,要看網路插孔有沒有「自動跳線」功能而定
一般來說,網路卡都沒有這個功能
switch 一定有這個功能
小烏龜要看機種
阿爾卡特小白龜 speed 340 好像沒有自動跳線功能
小白龜接電腦網路卡時,需使用跳線
中華電信附贈的那條綠色網路線,應該是跳線
作者:ppp099
線上遊戲通常有固定 port
直接封 port 就行了,不用使用到 L7-filter (殺雞焉用牛刀)
每種線上遊戲,當要與 server 端連線時,會被要求使用某個 port (埠號)
只要知道這個 port 號碼,並在防火牆設置中,將其設為阻擋
即可讓這個線上遊戲無法玩
因為連接不上 server 端伺服器,自然無法玩
但問題在於這個 port 號碼是多少? (可能不只一組)
有兩種方法:
1.直接打電話去問遊戲公司
2.使用軟體去偵測
提供幾種常用的偵測方法:
方法一、
電腦先關閉所有會上網的程式,單獨只開啟風之谷,連上線
上線後,按 ALT+ TAB,跳回桌面 (遊戲不要關閉,保持連線)
開啟 [命令提示字元],打指令: netstat -a
畫面會列出電腦目前所有與網路連接的程式
它們連接的 server IP 和 port
自行判斷一下,風之谷應該是哪個
通常線上遊戲如果是在中華電信機房
找有 hinet 字樣的,就八九不離十了
方法二、
windows 電腦安裝防火牆軟體
例如:費爾個人防火牆 (免費軟體,中文版)
這個軟體可以偵測所有連線的程式
它們連到哪邊,並且使用的 port 號碼多少
方法一樣,遊戲先上線
切到費爾防火牆畫面,觀看該遊戲的 port 多少
知道遊戲使用的 port 號碼後,就好辦事了
打開 Coyote web 管理介面,切到防火牆設置
基本防火牆,或高階防火牆皆可
設定把該 port 阻擋即可
書籤