http://www.smart-mobile.com/forum/viewtopic.php?t=127
On/Off Service
การปิด Service ของเราเตอร์ เราจะปิดทั้งหมดยกเว้น Web ซึ่งเราย้ายไปพอร์ท 81 กับ Winbox ซึ่งทำงานอยู่บนพอร์ท 8291
#Begin Script#
/
/ ip service
set telnet address="" disabled=yes port=23
set ftp address="" disabled=yes port=21
set www address="" disabled=no port=81
set ssh address="" disabled=yes port=22
set www-ssl address="" certificate=none disabled=yes port=443
set api address="" disabled=yes port=8728
set winbox address="" disabled=no port=8291
/
#End Script#
===========================================
DNS Config
DNS ส่วนนี้สำคัญมาก ปกติเราใช้ของ ISP แต่ผมใช้ของ Google คือ 8.8.8.8 และ 8.8.4.4 เพราะหากใช้ Load Balance จะต่าง ISP ทำให้เกิดปัญหาไม่ยอม Resolve DNS ในบางครั้งที่ออกเน็ทต่าง ISP กัน
#Begin Script#
/
/ ip dns
set allow-remote-requests=yes cache-max-ttl=1w cache-size=2048KiB \
max-udp-packet-size=4096 servers=8.8.8.8,8.8.4.4
/
#End Script#
===========================================
IP Address Config on Ethernet Port
การตั้งค่า IP Address แบบ Static ให้แก่ Interface เช่น ether1 ether2 ether3 ether4 ether5 เป็นต้น
#Begin Script#
/
/ ip address
add address=192.168.8.1/24 disabled=no interface=ether1 network=192.168.8.0
/
#End Script@
ขออธิบายแบบชาวบ้านน่ะครับ การตั้งค่า IP Address ตามด้านบนให้แก่ Port1 ซึ่งมีชื่อว่า ether1
ณ ที่นี้คือ 192.168.8.1 ครับซึ่งเราจะใช้ได้คือลงท้ายด้วย 1 ถึง 254 น่ะครับ
เรื่อง Subnet ดูที่ / ครับ จากตัวอย่างคือ /24
/24 --> 255.255.255.0
/16 --> 255.255.0.0
/8 --> 255.0.0.0
disabled=no หมายถึงว่า คำสั่งบรรทัดนี้ ACTIVE ครับ ถ้าเราเปลี่ยนเป็น disabled=yes หมายถึงว่า คำสั่งบรรทัดนี้ไม่มีผลหรือ INACTIVE ครับ แน่นอนครับคำสั่งต้อง ACTIVE แต่ก็ระงับได้ภายหลังเช่นกัน
ส่วน ether1 ก็คือชื่อ interface ครับโดยปกติเราเตอร์ที่เราซื้อมามี 5 พอร์ทชื่อจะตั้งมาไว้เป็น ether1 ถึง ether5 ครับ
ส่วน 192.168.8.0 ครับขออธิบายแบบชาวบ้านว่า 0 ตัวหลังนั้นแทน NETWORK ID ของทั้งวง LAN ครับ
เลข IP Address ที่เป็น Local Address จะไม่สามารถ Route บนโครงข่ายอินเตอร์เน็ทได้น่ะครับ เรานิยมใช้ Class C 192.168.x.y เป็นหลัก
อ่านเพิ่มเติมเรื่อง IP Address ได้ที่ http://en.wikipedia.org/wiki/IP_address" onclick="window.open(this.href);return false;
===========================================
== Basic Config MikroTik RouterOS
Ether1: LAN 192.168.1.1
Ether2: WAN1
DHCP: 192.168.1.2-253
DNS: 8.8.8.8 / 8.8.4.4
Load Balance Type: PCC
# Please change upon your design decision
#
# Writen by Pakorn Amornprapateerakul (pakorna@gmail.com)
# No firewall, please add firewall later for security purpose
# Port 1 or ether1 is LAN 192.168.1.1 --> Client via DHCP 192.168.1.2 - 192.168.1.253 DNS 8.8.8.8, 8.8.4.4
# Port 2 or ether2 is WAN1 pppoe-out1 ADSL PPPoE Bridge Mode Connection
# Port 3 or ether3 is not used
# Port 4 or ether4 is not used
# Port 5 or ether5 is not used
/ip service
set telnet address="" disabled=yes port=23
set ftp address="" disabled=yes port=21
set www address="" disabled=no port=81
set ssh address="" disabled=yes port=22
set www-ssl address="" certificate=none disabled=yes port=443
set api address="" disabled=yes port=8728
set winbox address="" disabled=no port=8291
/system clock
set time-zone-name=Asia/Bangkok
/
/system ntp client
set enabled=yes mode=unicast primary-ntp=128.138.141.172 secondary-ntp=118.175.67.83
/
/ip dns
set allow-remote-requests=no cache-max-ttl=1w cache-size=2048KiB \
max-udp-packet-size=4096 servers=8.8.8.8,8.8.4.4
#กำหนด IP Address แบบ Static ให้กับ ether1 หรือพอร์ทช่องที่ 1
/
/ip address
add address=192.168.1.1/24 disabled=no interface=[color=#0000FF]ether1 network=192.168.1.0
/
#กำหนดช่วง IP Address เอาไว้ใช้ในภายภาคหน้าครับ เช่นอาจนำ IP ช่วงนี้ไปแจกให้กับ DHCP Server ได้ครับ
/
/ip pool
add name=dhcp_pool1 ranges=192.168.1.2-192.168.1.253
/
#สร้าง DHCP Server ซึ่งทำงานบนพอร์ท1 ether1 ครับ
/
/ip dhcp-server
add address-pool=dhcp_pool1 authoritative=after-2sec-delay bootp-support=\
static disabled=no interface=ether1 lease-time=3d name=dhcp1
/
/ip dhcp-server config
set store-leases-disk=5m
/
# ค่าต่าง ๆ ที่คุณจะให้ DHCP Server ที่คุณได้สร้างไว้ส่งค่าออกไปสู่เครื่องลูกข่าย
/
/ip dhcp-server network
add address=192.168.1.0/24 dhcp-option="" dns-server=8.8.8.8,8.8.4.4 gateway=\
192.168.1.1 netmask=24 ntp-server=129.6.15.29,118.175.67.83
/
# ตรงส่วนนี้คือการกำหนด PPPOE Client ซึ่งจะต้องใช้ username และ password ที่ ISP ให้เรามาในการเชื่อมต่อ ADSL#
# โดยเราต่อที่ช่องที่ 1 หรือ ether1 ซึ่งเราจะได้ logical interface pppoe-out1 ซ้อนอยู่บน ether1 อีกทีครับ#
#Please change username1, password1 according to your ISP credential assignment#
/
/ interface pppoe-client
add ac-name="" add-default-route=no allow=pap,chap,mschap1,mschap2 comment=\
"WAN1 pppoe-out1 on ether2" dial-on-demand=no disabled=no interface=\
ether2 max-mru=1480 max-mtu=1480 mrru=disabled name=pppoe-out1 password=\
password1 profile=default service-name="" use-peer-dns=no user=username1
# GATEWAY SETUP SECTION
# ณ คำสั่งนี้คือการกำหนด default routing เพื่อที่จะออกเน็ท 0.0.0.0/0 ให้ไปออกที่ interface ที่ชื่อว่า pppoe-out1 ซึ่งก็คือ ADSL ที่เราเชื่อมต่อแบบ PPPoE นั่นเองครับ
/ ip route
add check-gateway=ping disabled=no dst-address=0.0.0.0/0 gateway=pppoe-out1
/
# NETWORK ADDRESS TRANSLATION(MASQUERADE) for local address which cannot route on the internet
# แน่นอนครับ IP ระบบ LAN ไม่ว่า Class A, B, C ไม่สามารถ route บนเครือข่ายอินเตอร์เน็ทได้ จะต้องยกหน้าที่ให้ interface ที่ได้ ip address ของอินเตอร์เน็ท ซึ่งก็คือ pppoe-out1 สวมหน้ากากแสดงบทบาทเพื่อที่จะนำ packet ของท่านออกสู่โลกอินเตอร์เน็ทได้ โดยผมกำหนดให้ LAN หรือ Source Address เป็น 192.168.1.1 - 254 เท่านั้นที่จะออกสวมหน้ากาก IP แท้ pppoe-out1 เพื่อที่จะสามารถออกสู่อินเตอร์เน็ทได้
/ ip firewall nat
add action=masquerade chain=srcnat disabled=no out-interface=pppoe-out1 src-address=192.168.1.0/24
/[/color]
แค่นี้เราก็ได้เราเตอร์พื้นฐานบน MikroTik RouterOS แล้วครับ ส่วนต่อไปด้านล่างเราจะเริ่มกันที่ Script Load Balance 2 ADSL Lines
== Basic Config MikroTik RouterOS
for Load Balance 2 WANs : Per Connection Classifier Method
Ether1: LAN 192.168.1.1
Ether2: WAN1
Ether3: WAN2
DHCP: 192.168.1.2-253
DNS:8.8.8.8 / 8.8.4.4
ในกรณีที่เราต้องการโหลด Balance ADSL 2 สายความเร็วเท่ากันแล้วออก LAN ที่พอร์ท 1 ซึ่งมี IP Address 192.168.1.1
# Please change upon your design decision
# PCC 2 wan load balance 1 lan on RB Series using port 1 to 3, 4 and 5 are not used
# by Pakorn Amornprapateerakul (pakorna@gmail.com)
# No firewall, please add firewall later for security purpose
# Port 1 or ether1 is LAN 192.168.1.1 --> Client via DHCP 192.168.1.2 - 192.168.1.253 DNS 8.8.8.8, 8.8.4.4
# Port 2 or ether2 is WAN1 pppoe-out1 ADSL PPPoE Bridge Mode Connection
# Port 3 or ether3 is WAN2 pppoe-out2 ADSL PPPoE Bridge Mode Connection
# Port 4 or ether4 is not used
# Port 5 or ether5 is not used
/
/ ip service
set telnet address="" disabled=yes port=23
set ftp address="" disabled=yes port=21
set www address="" disabled=no port=81
set ssh address="" disabled=yes port=22
set www-ssl address="" certificate=none disabled=yes port=443
set api address="" disabled=yes port=8728
set winbox address="" disabled=no port=8291
/
/ system clock
set time-zone-name=Asia/Bangkok
/
/ system ntp client
set enabled=yes mode=unicast primary-ntp=128.138.141.172 secondary-ntp=118.175.67.83
/
/ ip dns
set allow-remote-requests=no cache-max-ttl=1w cache-size=2048KiB \
max-udp-packet-size=4096 servers=8.8.8.8,8.8.4.4
/
/ ip address
add address=192.168.1.1/24 disabled=no interface=ether1 network=192.168.1.0
/
/ ip pool
add name=dhcp_pool1 ranges=192.168.1.2-192.168.1.253
/
/ ip dhcp-server
add address-pool=dhcp_pool1 authoritative=after-2sec-delay bootp-support=\
static disabled=no interface=ether1 lease-time=3d name=dhcp1
/
/ ip dhcp-server config
set store-leases-disk=5m
/
# To prevent multi ISP DNS problem, you can use google dns 8.8.8.8 and 8.8.4.4 as a solution to this issue in multi wan.#
# การป้องกันปัญหากรณีใช้ DNS Server ต่างผู้ให้บริการอินเตอร์เน็ทจะทำให้ใช้งานไม่ได้ จึงแก้ไขด้วยการใช้ Google DNS แทน#
/
/ ip dhcp-server network
add address=192.168.1.0/24 dhcp-option="" dns-server=8.8.8.8,8.8.4.4 gateway=\
192.168.1.1 netmask=24 ntp-server=129.6.15.29,118.175.67.83
/
#Define PPPoE Dial Up Interface is a must prior to script loading to prevent the script error#
#จำเป็นมากที่จะต้องสร้าง pppoe-outn interface ก่อนโหลด Script ไม่งั้นจะเกิด error 100% ซึ่งจะใช้งาน Script ไม่ได้เลย และห้ามถอด pppoe-outn interface ออกจาก Script เด็ดขาดไม่งั้นเราเตอร์จะเกิด error ขึ้นทันที#
/
#Please change username1, username2, username3, password1, password2 and password3 according to your ISP credential assignment#
/
/ interface pppoe-client
add ac-name="" add-default-route=no allow=pap,chap,mschap1,mschap2 comment=\
"WAN1 pppoe-out1 on ether2" dial-on-demand=no disabled=no interface=\
ether2 max-mru=1480 max-mtu=1480 mrru=disabled name=pppoe-out1 password=\
password1 profile=default service-name="" use-peer-dns=no user=username1
add ac-name="" add-default-route=no allow=pap,chap,mschap1,mschap2 comment=\
"WAN2 pppoe-out2 on ether3" dial-on-demand=no disabled=no interface=\
ether3 max-mru=1480 max-mtu=1480 mrru=disabled name=pppoe-out2 password=\
password2 profile=default service-name="" use-peer-dns=no user=username2
/
#Begining of PCC Load Balance Section#
/
/ ip firewall mangle
add action=mark-connection chain=prerouting connection-mark=no-mark disabled=\
no in-interface=pppoe-out1 new-connection-mark=WAN1_conn passthrough=yes
add action=mark-connection chain=prerouting connection-mark=no-mark disabled=\
no in-interface=pppoe-out2 new-connection-mark=WAN2_conn passthrough=yes
/
/ ip firewall mangle
add action=mark-routing chain=output connection-mark=WAN1_conn disabled=no \
new-routing-mark=to_WAN1 passthrough=yes
add action=mark-routing chain=output connection-mark=WAN2_conn disabled=no \
new-routing-mark=to_WAN2 passthrough=yes
/
/ ip firewall mangle
add action=accept chain=prerouting dst-address=192.168.1.0/24
/
#กรณี ถ้านำไปใช้กับ HOTSPOT Function ให้เพิ่มส่วนสีแดง[color=#FF0000] hotspot=auth เสมอ#
#ถ้าไม่ใช้ Script นี้ร่วมกับฟังก์ชั่น HOTSPOT Server ให้เอาส่วนสีแดง hotspot=auth ออกเสมอ#
#ในกรณีที่ Weight หรือสัดส่วนความเร็วไม่เท่ากันเราจะแก้สองคำสั่งด้านล่างนี้ครับ#
/
/ ip firewall mangle
add action=mark-connection chain=prerouting connection-mark=no-mark disabled=\
no dst-address-type=!local hotspot=auth src-address=192.168.1.0/24 new-connection-mark=WAN1_conn passthrough=yes per-connection-classifier=both-addresses:2/0
add action=mark-connection chain=prerouting connection-mark=no-mark disabled=\
no dst-address-type=!local hotspot=auth src-address=192.168.1.0/24 new-connection-mark=WAN2_conn passthrough=yes per-connection-classifier=both-addresses:2/1
/
#ส่วนสำคัญของ PCC Load Balance อยู่ที่สองคำสั่งด้านบนนี้ครับ #
/
/ ip firewall mangle
add action=mark-routing chain=prerouting connection-mark=WAN1_conn disabled=\
no src-address=192.168.1.0/24 new-routing-mark=to_WAN1 passthrough=yes
add action=mark-routing chain=prerouting connection-mark=WAN2_conn disabled=\
no src-address=192.168.1.0/24 new-routing-mark=to_WAN2 passthrough=yes
/
# NETWORK ADDRESS TRANSLATION(MASQUERADE) for local address which cannot route on the internet#
/
/ ip firewall nat
add action=masquerade chain=srcnat disabled=no out-interface=pppoe-out1 src-address=192.168.1.0/24
add action=masquerade chain=srcnat disabled=no out-interface=pppoe-out2 src-address=192.168.1.0/24
/
# DEFAULT GATEWAY SETUP SECTION#
/
/ ip route
add check-gateway=ping disabled=no dst-address=0.0.0.0/0 gateway=pppoe-out1 routing-mark=to_WAN1
add check-gateway=ping disabled=no dst-address=0.0.0.0/0 gateway=pppoe-out2 routing-mark=to_WAN2
/
#GATEWAY FAIL OVER#
/
/ ip route
add check-gateway=ping disabled=no distance=1 dst-address=0.0.0.0/0 gateway=pppoe-out1
add check-gateway=ping disabled=no distance=2 dst-address=0.0.0.0/0 gateway=pppoe-out2
/
#End Script PCC Dual WANS Load Balance#
ไม่มีความคิดเห็น:
แสดงความคิดเห็น