Sơ lược về ý tưởng
Cách đây vài hôm mình gặp rắc rối lúc config Port Forwarding cái zoom X4 và quản lý cái Host của mình bằng cái D-Link. Vì vậy mình chuyển qua sử dụng Bridge mode để kết nối Internet. Lúc đầu tìm hiểu về Bridge mode mình cũng gặp khá nhiều trục trặc và vô tình mình phát hiện ra là có thể tạo ra nhiều PPP interfaces với 1 account. Mình thử Ping các IP của các Interface đó ttl trả về đều là 64 đều từ máy Linux mà ra hết. Tiếp theo mình thử sử dụng 2 máy để kết nối PPP tới ISP cả 2 máy đều có thể download được Full đường truyền. Từ đó mình có ý định sử dụng Load Balancing để chia tải cho các kết nối PPP và tăng tốc kết nối Internet. Thật ra ngay lúc đó mình cũng chỉ biết Load Balancing là chia tải chứ chưa thật sự biết nó là gì. Sau nửa ngày trời lục lọi trên Internet xem xét nhiều Software mình thấy Load Balancing chỉ hiệu quả khi tạo nhiều kết nối dùng để download hoặc upload thôi nếu cũng sử dụng 1 kết nối thì tốc độc vẫn bình thường và ứng dụng thích hợp nhất cho nó là Torrent. Mình cũng phát hiện rằng trong chính Ubuntu đã có chức năng này.
Các bạn có thể tìm hiểu nhiều hơn về định tuyến (route) trên Linux tại http://lartc.org nếu các bạn quan tâm về định tuyến thì tài liệu này có thể rất có ích.
Nhận xét của mình
Mình chỉ mới thử cái này trên Viettel và Ubuntu còn Fedora có hướng dẫn thử cho một người nhưng làm không thành công. Nếu tốc độ kết nối của bạn cũng bằng với tốc độ Downstream và Upstream trong Modem ghi thì không nên thử vì cũng không cải thiện thêm. Còn nếu muốn dùng Home N và tận hưởng tốc độ Home C thì bài viết này sẽ giúp bạn. Mình hi vọng Viettel sẽ cho chạy thả giàn trong mấy ngày tết qua tết sẽ Fix lỗi này lại vì lỗi này rất dễ Fix. Nếu nhiều người sử dụng cách này có thể sẽ gây lỗi tràn DSLAM, IP của Viettel vì vậy mình mong các cao thủ không nên làm quá tay.
Các bước tiến hành
Đọc hết bài viết rồi mới thử nhé coi chừng chết giữa đường không vào Net được đâu.
Đầu tiên các bạn phải cài đặt kết nối theo kiểu PPP ở chế độ Bridge.
Ở chế độ Bridge thì chính Ubuntu sẽ làm nhiệm vụ kết nối với ISP. Trên Windows thì không thể tạo nhiều kết nối WAN được nhưng Linux thì có thể.
Sau khi đã dùng lệnh pppoeconf để cài đặt Internet bạn có thể xài lệnh
pon dsl-provider
để tạo thêm kết nối
(Để disconnect thì xài lệnh poff dsl-provider)
Bạn tạo chừng 5 kết nối thêm. Sau đó phải xoá bản default rote đang chạy. Bằng lệnh
sudo ip route del default
Chạy 6-7 lần gì cho chắc ăn để có thể xoá hết.
Lúc này xài lệnh ifconfig để xem xem bạn đang có bao nhiêu ppp connect. Nếu có tới ppp5 thì bạn đang có 6 connect.
Sau đó sử dụng lệnh ip route để tạo một bảng định tuyến mới.
gateway=$(ifconfig ppp0 | grep 'inet addr:' | cut -d: -f3 | awk '{ print $1}')
sudo ip route add default scope global nexthop via $gateway dev ppp0 weight 1 nexthop via $gateway dev ppp1 weight 1 nexthop via $gateway dev ppp2 weight 1 nexthop via $gateway dev ppp3 weight 1 nexthop via $gateway dev ppp4 weight 1 nexthop via $gateway dev ppp5 weight 1
lúc này xài lệnh ip route để xem bản định tuyến của bạn ra sao.
Nếu có dạng giống giống
117.5.128.1 dev ppp0 proto kernel scope link src 117.5.130.181
117.5.128.1 dev ppp1 proto kernel scope link src 117.5.134.51
117.5.128.1 dev ppp2 proto kernel scope link src 117.5.134.52
117.5.128.1 dev ppp3 proto kernel scope link src 117.5.134.54
117.5.128.1 dev ppp4 proto kernel scope link src 117.5.134.55
117.5.128.1 dev ppp5 proto kernel scope link src 117.5.134.57
117.5.128.1 dev ppp6 proto kernel scope link src 117.5.134.58
117.5.128.1 dev ppp7 proto kernel scope link src 117.5.134.59
117.5.128.1 dev ppp8 proto kernel scope link src 117.5.134.60
117.5.128.1 dev ppp9 proto kernel scope link src 117.5.134.62
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.2
169.254.0.0/16 dev eth0 scope link metric 1000
default
nexthop via 117.5.128.1 dev ppp0 weight 1
nexthop via 117.5.128.1 dev ppp1 weight 1
nexthop via 117.5.128.1 dev ppp2 weight 1
nexthop via 117.5.128.1 dev ppp3 weight 1
nexthop via 117.5.128.1 dev ppp4 weight 1
nexthop via 117.5.128.1 dev ppp5 weight 1
nexthop via 117.5.128.1 dev ppp6 weight 1
nexthop via 117.5.128.1 dev ppp7 weight 1
Thì bạn đã thành công rồi. Bây giờ chỉ việc download nhiều file 1 lúc thử xem.
Mình có thử làm một Script dùng để Load Balancing luôn bạn phải chạy nó. Điều kiện là phải tạo bridge mode ở bài viết trước nhé. (Open -> Run In Terminal -> nhập password vào)
Đây là đoạn Script Loadbalancing
#########################################
sudo pon dsl-provider
sleep 1
sudo pon dsl-provider
sleep 1
sudo pon dsl-provider
sleep 1
sudo pon dsl-provider
sleep 1
sudo pon dsl-provider
sleep 1
sudo pon dsl-provider
sleep 1
sudo pon dsl-provider
sleep 3
sudo ip route del default
sudo ip route del default
sudo ip route del default
sudo ip route del default
sudo ip route del default
sudo ip route del default
sudo ip route del default
sleep 0.5
sudo ip route del default
sleep 0.5
sudo ip route del default
sleep 0.5
sudo ip route del default
sleep 0.5
sudo ip route del default
sleep 0.5
sudo ip route del default
sleep 0.5
sudo ip route del default
sleep 0.5
sudo ip route del default
sleep 3
gateway=$(ifconfig ppp0 | grep ‘inet addr:’ | cut -d: -f3 | awk ‘{ print $1}’)
sudo ip route add default scope global nexthop via $gateway dev ppp0 weight 1 nexthop via $gateway dev ppp1 weight 1 nexthop via $gateway dev ppp2 weight 1 nexthop via $gateway dev ppp3 weight 1 nexthop via $gateway dev ppp4 weight 1 nexthop via $gateway dev ppp5 weight 1
#########################################
Chú ýở dòng gateway là dấu ‘ ở dưới dấu ” thẳng đứng không phải dấu ` đâu nhé. Post lên đây nó bị đổi.

Phần lớn các ISP đều không cho mở nhiều kết nối với 1 account. Viettel thật là sơ hở.
ko phải viettel sơ hở đâu bro, mà đó là thế mạnh của linux đó,họ chỉ chặn được những người quẹo phải (dùng win) còn làm seo ngờ được có những người quẹo trái (dùng linux) như afterlastangel đâu 😀
Nhưng theo mình nghĩ thì rất dễ để check và chặn lại. Chỉ cho 1 Account có 1 PPP connection tới DSLAM thôi là được.
Ủa cái này dùng cho VNN được không vậy bạn?
Phải nói là hên xui 😛
chiêu này còn xài được không vậy các bác?
Cho tới hôm nay vẫn bình thường. Viettel nó thả rồi.
anh ơi cho em xin cái script loadbalancing ạh. Trang web Lê Hoàng Gia bảo trì rùi.
Àh, anh triển khai server linux áp dụng cách này để làm route cho mạng LAN chưa vậy?
Để làm Server cho mạng lan đều có thể được nhưng mình thì chưa có thời gian để tìm hiểu thêm. Bạn có thể xem cách thức tại.
http://lartc.org/howto/lartc.rpdb.multiple-links.html
Chạy script trên nó báo thế này:
:~$ gateway=$(ifconfig ppp0 | grep ‘inet addr:’ | cut -d: -f3 | awk ‘{ print $1}’)
grep: addr:’: No such file or directory
awk: 1: unexpected character 0xe2
Test:
‘inet addr:’
Àh há hiểu ràu. Thanks wordpress
Viettel có yêu cầu xác thực qua MAC address không bạn? Mình dùng bridge mode connect tử windows không được.
Ko có chuyện xác thực đâu.
BÁC có thể hướng dẫn bằng hình ảnh không tui có gì bác để lai yahoo để tui tien hơi nha
ai làm dc thì hướng đẫn mình với YH : [email protected] bác nào làm thành công thì chỉ mình nha đang sài mạng viêttel
Cũng có vài bạn làm được rồi. Mình chỉ hướng dẫn được tới thế không chi tiết hơn được nữa đâu
hix hix doc cha hieu gi het +_+
bac nao lam thanh cong tot bung chi minh di ^^
Hi afterlastangel, bài viết này của bạn mình sẽ thử nghiệm ngay, hi vọng cũng đạt được tốc độ như bạn đã nói. Thân.
mình đã làm giống bài chỉ dẫn này, nhưng khi pon dsl-provider thì có lúc tạo ra connect pppoe mới đuợc, lúc thì không, và khi khởi động lại thì các kết nối này biến mất, có cách nào khắc phục không? và tốc độ đuờng truyền rất chậm và không ổn định so với window, có cách nào khắc phục không? mình dùng dsl của viettel, cài đặt bridge, dùng ubuntu 7.10. cảm ơn.
Mình cũng cảm thấy vậy không ổn định. Chỉ dùng nó khi mình download torrent thôi. Mỗi lần restart máy thì nó mất kết nối là đúng rồi.
mình đã thử rồi , nhưng sau khi ip route thi nó ra giống vầy
117.5.128.1 dev ppp0 proto kernel scope link src 117.5.130.181
117.5.128.1 dev ppp1 proto kernel scope link src 117.5.134.51
117.5.128.1 dev ppp2 proto kernel scope link src 117.5.134.52
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.2
169.254.0.0/16 dev eth0 scope link metric 1000
với lại cũng không vào web đc , ko biết tại sao , mình setup bridge với lại chạy cái load script rồi , giúp với 😦
Bạn chưa làm bước
Nhớ chỉnh sửa thành dấu nháy đứng nhé ‘
gateway=$(ifconfig ppp0 | grep ‘inet addr:’ | cut -d: -f3 | awk ‘{ print $1}’)
sudo ip route add default scope global nexthop via $gateway dev ppp0 weight 1 nexthop via $gateway dev ppp1 weight 1 nexthop via $gateway dev ppp2 weight 1 nexthop via $gateway dev ppp3 weight 1 nexthop via $gateway dev ppp4 weight 1 nexthop via $gateway dev ppp5 weight 1
Mình đã xài cái script ở trên ấy , ko có lỗi gì cả , chỉ sau khi xài thì đến ping cái google cũng ko đc.