Re: [問題]BSD_多_IP_load_blance的方法
【 在 appleboy.bbs@bbs.sayya.org (我是小惡魔) 的大作中提到: 】
: 請問一下 我是用 FreeBSD 5.3 release
: 我目前主機上有一張網卡 請問我要如何做到
: 一張網卡 可以多個實體IP 因為我要做流量 load balance
: 也就是 如果今天拿到 140.123.1.11 - 140.123.1.20
: 總共 10 個IP 然後 每天可以偵測 每當一個IP 對內跟對外流量達1G
: 就換自動切換IP 直到做會一個IP為止
: 請問可以做到這樣嗎
: 有相關文件可以參考嗎
看起來像是學校有單一ip流量限制 所以要 bind 很多 ip 去跑 :p
anyway , 有幾個方向可以給你參考 ...
1. 單純的要 "一張網卡 多個實體IP" 很簡單
假設網卡是 fxp0 的話 , 直接
ifconfig fxp0 140.128.1.11 netmask 255.255.255.0
ifconfig fxp0 140.128.1.12 netmask 255.255.255.255 alias
ifconfig fxp0 140.128.1.13 netmask 255.255.255.255 alias
...
ifconfig fxp0 140.128.1.20 netmask 255.255.255.255 alias
但是這樣不會自己 round robin , 只是單純讓你的機器有很多實體IP而已 ...
2. 假如該機器是單純的做 server (web、ftp ... etc)
自己不常主動往外連的話
弄一個 domain name , 指向這10個 ip , 並把 TTL 縮短一點 ( ex : 60 )
這樣 client 就會輪流連向這10個 ip 了 ....
雖然不可能做到很精確的 "平均" 每個ip的流量
但是一定程度上的分散流量在每個 ip 上還是可以的 .....
3. 假如該機器很常主動往外連的話 .... ( ex : 做 BT 機 :p )
就不適用 1 + 2 的方法 ...
可以用 trafd 配合一些 script ..
機器跑著 trafd , 定時收集對每個 ip 的流量
然後寫 script , 定時跑 trafstat 做分析
假如自己流入/流出 的流量到達一定的程度
就跑 ifconfig 換個 ip .... :p
4. 如果機器又要往外連、又要當 server ..
可以用 3 的方法 ... 配合 dns 調整 ...
也就是弄一個 domain name , TTL 短一點 , 指向你目前 bind 的 ip ...
當該 ip 流量到 ... 換 ip 的時候 ... 就修改 dns 的資料 .. 指去新的 ip...
根據自己的經驗 , 如果主動對外的流量不大的話 ...
用 1+2 就夠了 ... 可以分散流量在幾個 ip 上 ...
最好加上 trafd + script .. 防止 ip 流量爆掉 ....
當某一個 ip 流量要爆前 .. 把那個 ip 停掉 :p
--
※ 來源:‧大度山之戀 bbs.thu.edu.tw‧[FROM: 140.128.195.243]
討論串 (同標題文章)
FreeBSD 近期熱門文章
PTT數位生活區 即時熱門文章