บางคนที่มีอินเตอร์เน็ตมากกว่า 1 เส้น และต้องการใช้งานอินเตอร์เน็ตที่มีพร้อมกันให้คุ้มค่ากับที่เราจ่ายเงินไป มากกว่าแค่การทำอินเตอร์เน็ตแบบ Backup บทความนี้เราจึงขอเสนอการใช้งานอินเตอร์เน็ตที่มีมากกว่า 1 เส้นโดยการทำ Load Balance แบบ PCC บนอุปกรณ์ MikroTikให้อินเตอร์เน็ตที่มีอยู่นั้นใช้งานได้พร้อมๆกันแบบคุ้มค่ากับที่เราจ่ายเงินไป
การใช้งานอินเตอร์เน็ตแบบ Load Balance อาจจะเกิดปัญหาแตกต่างกันไป ขึ้นอยู่กับการใช้งานของแต่ละคนนะจ๊ะ
เนื่องจากการตั้งค่านั้นมีหลายขั้นตอน เราจึงขอใช้นำเป็น Script มาให้ทุกคนนำไปใช้กันนะจ๊ะ (ในตัวอย่างเป็นการรวมเน็ต 2 เส้น สามารถปรับใช้ไปพีได้ตามต้องการ)
/interface bridge add name=bridge1
interface bridge port add interface=ether3 bridge=bridge1
interface bridge port add interface=ether4 bridge=bridge1
interface bridge port add interface=ether5 bridge=bridge1
/ip address
add address=192.168.10.1/24 network=192.168.10.0 broadcast=192.168.10.255 interface=bridge1
add address=192.168.1.254/24 network=192.168.1.0 broadcast=192.168.1.255 interface=ether1
add address=192.168.2.254/24 network=192.168.2.0 broadcast=192.168.2.255 interface=ether2
/ip dns set allow-remote-requests=yes cache-max-ttl=1w cache-size=5000KiB max-udp-packet-size=512 servers=8.8.8.8
/ip firewall mangle
add chain=input in-interface=ether1 action=mark-connection new-connection-mark=ether1_conn
add chain=input in-interface=ether2 action=mark-connection new-connection-mark=ether2_conn
add chain=output connection-mark=ether1_conn action=mark-routing new-routing-mark=to_ether1
add chain=output connection-mark=ether2_conn action=mark-routing new-routing-mark=to_ether2
add chain=prerouting dst-address=192.168.1.0/24 action=accept in-interface=bridge1
add chain=prerouting dst-address=192.168.2.0/24 action=accept in-interface=bridge1
add chain=prerouting dst-address-type=!local in-interface=bridge1 per-connection-classifier=both-addresses-and-ports:2/0 action=mark-connection new-connection-mark=ether1_conn passthrough=yes
add chain=prerouting dst-address-type=!local in-interface=bridge1 per-connection-classifier=both-addresses-and-ports:2/1 action=mark-connection new-connection-mark=ether2_conn passthrough=yes
add chain=prerouting connection-mark=ether1_conn in-interface=bridge1 action=mark-routing new-routing-mark=to_ether1
add chain=prerouting connection-mark=ether2_conn in-interface=bridge1 action=mark-routing new-routing-mark=to_ether2
/ip route
add dst-address=0.0.0.0/0 gateway=192.168.1.1 routing-mark=to_ether1 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=192.168.2.1 routing-mark=to_ether2 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=192.168.1.1 distance=1 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=192.168.2.1 distance=2 check-gateway=ping
/ip firewall nat
add chain=srcnat out-interface=ether1 action=masquerade
add chain=srcnat out-interface=ether2 action=masquerade