การติดตั้งและคอนฟิกโปรแกรม MRTG บน Windows NT,2000,XP
ที่มา : http://people.ee.ethz.ch/~oetiker/webtools/mrtg/nt-guide.html
แปลเรียบเรียงโดย
...
อดิศร  ขาวสังข์


การติดตั้งสำหรับ
Win 95/98/ME ดูได้ ที่นี่  /// การติดตั้งสำหรับ Linux ดูได้ ที่นี่


รู้จักกับ
MRTG
MRTG ย่อมาจาก Multi Router Traffic Grapher เป็นเครื่องมือที่ใช้สำหรับการมอนิเตอร์ดู Traffic Load บน Nerwork Links ซึ่งการทำงานของ MRTG จะมีการสร้าง HTML Pages ที่ประกอบด้วยภาพ (กราฟ) ชนิด PNG
โดยภาพดังกล่าวนี้จะแสดงถึงปริมาณของทราฟฟิกบนเครือข่าย สามารถดูตัวอย่างได้ที่ http://www.stat.ee.ethz.ch/mrtg/ ซึ่งการนำไปใช้งานส่วนใหญ่ก็จะนำไปมอนิเตอร์ดูทราฟฟิกตามพอร์ตต่าง ๆ ของเราเตอร์ ว่ามีทราฟฟิกหนาแน่นขนาดไหน

การติดตั้ง
Active Perl
เนื่องจาก MRTG ต้องใช้ภาษา Perl ช่วยในการโปรเซส ดังนั้นถ้าในเครื่องของท่านยังไม่ได้ลงโปรแกรมภาษา Perl เอาไว้ก็ให้ไปดาวน์โหลด Active Perl มาก่อน ซึ่งสามารถดาวน์โหลดได้จาก ที่นี่ โดยต้องเป็นเวอร์ชัน 5.005 หรือสูงกว่า 5.6  เมื่อดาวน์โหลดมาแล้วก็ให้ทำการติดตั้ง โดยวิธีการติดตั้งก็ไม่ต้องทำอะไรครับ แค่กด Next ไปเรื่อย ๆ ก็เสร็จเอง หลังจากนั้นก็ไม่ต้องมีการคอนฟิกแต่ประการใดครับ

คุณสามารถตรวจสอบเพื่อความมั่นใจว่า
Perl binary directory  เป็นรายการที่มีอยู่ใน System Path ของคุณแล้วยัง ด้วยการดูที่
            Control Panel -> System -> Environment    (เวอร์ชันของ OS ที่ต่างกัน อาจจะแตกต่างกันบ้าง)
โดยหาข้อความต่อไปนี้ :
            C:\Perl\bin;%SystemRoot%\system32;%SystemRoot%;...


การติดตั้งโปรแกรม
MRTG
ในขั้นแรกก็ให้ไปดาวน์โหลดโปรแกรม MRTG มาก่อนนะครับ ซึ่งสามารถดาวน์โหลดได้ที่ http://people.ee.ethz.ch/~oetiker/webtools/mrtg/pub/ โดยในที่นี้ของเลือกเป็น mrtg-2.9.22.zip (คุณอาจจะเลือกเวอร์ชันที่ใหม่กว่านี้ก็ได้) เมื่อดาวน์โหลดมาเสร็จแล้วก็ให้ unzip ไฟล์ดังกล่าวไปไวที่ C:\mrtg-2.9.22 บน Windows NT , 2000 หรือ XP

การทดสอบความพร้อมของ
MRTG และ Perl ก็ทำได้ด้วย
การเข้าไปในตำแหน่ง c:\mrtg-2.9.22\bin ให้พิมพ์คำว่า
perl mrtg

ถ้าทั้งสองอย่างติดตั้งพร้อมแล้วจะมี
error message เกี่ยวกับการไม่มี mrtg configuration file ขึ้นมา ซึ่งคุณก็ไม่ต้อง worry นะครับ

การคอนฟิก
MRTG
ต่อไปเราก็จะมาเริ่มคอนฟิก MRTG กัน แต่ก่อนที่จะคอฟฟิกคุณต้องทราบข้อมูล 2 อย่างต่อไปนี้ด้วย
1.
IP Address หรือ Host Name ของ SNMP port number ของอุปกรณที่คุณต้องการจะมอนิเตอร์ ซึ่งถ้าอุปกรณ์ของคุณเป็น เราเตอร์ ก็คือ IP ที่เป็น Gateway หรือ IP ที่เป็น ethernet บนเราเตอร์นั่น เอง หรือถ้าใครจะใช้ IP ของพอร์ต WAN ก็ได้เหมือนกับครับ แต่ผมคิดว่า IP ของ Ethernet น่าจะเร็วกว่า
2.คุณต้องรู้ค่าของ
read-only SNMP community string บนอุปกรณ์ของคุณ ถ้าไม่รู้ก็ให้พยายามใช้ public ซึ่งเป็นค่า default ครับ

สำหรับในตัวอย่างนี้ผมใช้เราเตอร์ที่เป็น
CISCO โดยมี IP ของพอร์ต Ethernet เป็น 39.1.6.1 และ Commnity String เป็น Public

สิ่งแรกที่เราต้องเซ็ตอัพ mrtg คือการสร้าง default config file ดังนั้นตอนนี้ให้ไปที่ command prompt ด้วยการรันคำสั่ง cmd และให้ change ไดเร็คทอรี่ไปยัง c:\mrtg-2.9.22\bin   แล้วให้พิมพ์คำสั่งดังนี้ :

perl cfgmaker public@39.1.6.1 --global "WorkDir:
c:\www\mrtg" --output mrtg.cfg

หรือถ้าต้องการให้กราฟแสดงผลมาจากด้านขวามือ (ปกติจะเป็นด้านซ้าย) และให้หน่วยของกราฟเป็น Bits per second (ปกติจะเป็น Byte) ก็อาจจะใช้คำสั่งดังนี้ :

perl cfgmaker --global "WorkDir: c:\www\mrtg" --global "Options[_]: growright,bits" ifref=ip public@39.1.6.1 --output mrtg.cfg

ซึ่งเมื่อพิมพ์คำสั่งไปแล้ว ก็จะเป็นการสั่งให้มีการติดต่อกับ
router เพื่ออ่านค่าพารามิเตอร์ของพอร์ตต่าง ๆ บนเราเตอร์ (Ethernet และ Wan) ไปเก็บลงสู่ไฟล์ mrtg.cfg 

คำสั่งข้างบนนี้จะเป็นการสร้าง
initial MRTG config file ที่มีชื่อว่า mrtg.cfg (ตามที่ระบุในคำสั่ง) ไว้ในตำแหน่ง
c:\mrtg-2.9.22\bin และค่าของ WorkDir ซึ่งจากคำสั่งข้างบนจะอยู่ที่ c:\www\mrtg ก็เป็นตำแหน่งที่ใช้สำหรับการเก็บไฟล์ชนิดที่เป็น html page ซึ่งตำแหน่งนี้จะเก็บไว้ตรงไหนก็ได้ขึ้นอยู่กับคุณครับ โดยค่านี้จะถูกบันทึกลงสู่ไฟล์ mrtg.cfg  ซึ่งถ้าใช้ Nodepad เปิดดูไฟล์ mrtg.cfg จะมีสองบรรทัดแรกเป็นดังนี้ :

# Created by
# cfgmaker public@39.1.6.1 --global 'WorkDir: c:\www\mrtg' --output mrtg.cfg

นั่นคือจะมีตำแหน่งที่ใช้เก็บ html page อยู่ในบรรทัดที่สอง  และในส่วงล่างของไฟล์นี้จะมีคำสั่งภาษา html และพารามิเตอร์ของพอร์ตต่าง ๆ ที่จะนำไปใช้สร้างไฟล์ html ต่อไป

มาถึงตอนนี้ต้องไม่ลืมสร้างไดเร็คทอรี่
c:\www\mrtg  ไว้ด้วยนะครับ เพราะไม่งั้นจะไม่สามารถสร้างไฟล์ html ได้

ขั้นตอนต่อไปก็เป็นขั้นตอนที่สำคัญครับ คือการสร้าง
html page วิธีการที่ basic ที่สุด ก็คือให้ไปที่ไดเร็คทอรี่
c:\mrtg-2.9.22\bin แล้วพิมพ์คำสั่งต่อไปนี้ :

perl mrtg mrtg.cfg

ให้ไปดูที่ไดเร็คทอรี่ c:\www\mrtg จะเห็นว่ามีไฟล์เกิดขึ้นจำนวนหลายไฟล์ ซึ่งจะมีชนิดของไฟล์เป็น 3 ประเภทคือ

1.
html file ซึ่งจำนวนของไฟล์ประเภทนี้จะเท่ากับจำนวนของพอร์ต ต่าง ๆ ที่ใช้งานอยู่ของเราเตอร์ ไฟล์นี้เองที่เราจะต้องเปิดดูผ่าน browser เพื่อดูทราฟฟิกของพอร์ตต่าง ๆ
2.
png file เป็นไฟล์ภาพที่ใช้แสดงกราฟของทราฟฟิก
3.
log file

ซึ่งถ้าเราเปิดดู html ไฟล์ในตอนนี้เราจะเห็นแต่กราฟว่างเปล่า  เป็นเพราะว่าตอนนี้คำสั่ง
perl mrtg mrtg.cfg จะทำงานแค่ครั้งเดียวตอนที่เราพิมพ์ไปเท่านั้น วิธีที่จะให้มีกราฟเกิดขึ้นคุณจะต้องพิมพ์คำสั่ง perl mrtg mrtg.cfg อยู่ตลอดทุกช่วงเวลา ให้คุณลองทิ้งเวลาไปซัก 5 นาที แล้วให้พิมพ์คำสั่ง perl mrtg mrtg.cfg อีกครั้งคุณก็จะเห็นกราฟของทราฟฟิกเกิดขั้นมานิดหน่อย และข้างบนของกราฟให้สังเกตว่าค่าเวลาในการแสดงผลจะเปลี่ยนไปตามเวลาที่เราพิมพ์คำสั่ง

จะเห็นว่าถ้าจะให้มานั่งพิมพ์คำสั่งดังกล่าวอยู่ทุกช่วงเวลาคงจะไม่ใช่สิ่งที่ควรทำแน่ ๆ ดังนั้นเราจะต้องหาวิธีให้
MRTG รันตลอดเวลาให้ได้

การทำให้
MRTG รันตลอดช่วงเวลา
ขั้นแรกก็ให้เพิ่มออฟชั่นต่อไปนี้ (เป็น script หนึ่งบรรทัด) ไว้ในส่วนบน ๆ ของ config file (mrtg.cfg)

RunAsDaemon: yes

ให้ตำแหน่งของ command prompt ยังคงอยู่ที่
c:\mrtg-2.9.22\bin แล้วพิมพ์คำสั่งดังนี้

wperl mrtg --logging=eventlog mrtg.cfg

คำสั่งข้างบนนี้ จะเป็นการสั่งให้ mrtg รันทุกช่วงเวลาครับ (ค่า default เป็นทุก ๆ 5 นาที) ซึ่งหลังจากนี้ไปผลของกราฟจะมีการเปลี่ยนแปลงทุก ๆ 5 นาที (ยกเว้นมีการปิดเครื่อง PC หรือ Sever) ให้ดูเวลาบนกราฟประกอบครับ

ถ้าคุณเอา
mrtg ไปติดตั้งบน Web Server ที่วางอยู่บนอินเตอร์เน็ตหรือจะเป็นอินทราเน็ตก็แล้วแต่ ก็จะทำให้สามารถดูผลของกราฟ จากที่ไหนก็ได้ครับ นั่นคือในตอนสร้างไฟล์ config ก็ให้เปลี่ยนไดเร็คทอรี่ที่ใช้เก็บ html page ไปเป็นตำแหน่งของ home directory ของ Web Server หรือตำแหน่งอื่น ๆ แล้วค่อยสร้าง virtual directory เอา

จากที่กล่าวมาเมื่อใดที่คุณมีการปิดเครื่องหรือ restart เครื่องที่ได้ลง MRTG ไว้ ก็จะส่งผลให้ Service ของ MRTG ถูกปิดไปด้วย ซึ่งวิธีการที่จะรัน MRTG ขึ้นมาใหม่ก็คือการไปที่ Prompt --> c:\mrtg-2.9.22\bin แล้วป้อนคำสั่ง
wperl mrtg --logging=eventlog mrtg.cfg ใหม่ทุกครั้งที่มีการปิดแล้วเปิดเครื่องใหม่

ซึ่งจะไม่สะดวกนักสำหรับเครื่องที่ต้องมีการปิด-เปิด บ่อย ๆ วิธีการที่ทำให้สะดวกขึ้นก็คือการเอาสั่ง ดังกล่าวไปสร้าง เป็น batch file แล้ว save ลงในตำแหน่ง Start Up ของเครื่อง แค่นี้ก็จะทำให้เครื่องของคุณมีการรัน MRTG Service ทุกครั้งที่เปิดเครื่องใหม่ครับ