Post on 22-Jan-2023
ระบบคนหาเครอง Client ในระบบเครอขายดวย MAC Address กรณศกษา บรษท แมกเนคอมพ พรซชน เทคโนโลย จ ากด (มหาชน)
Network Client Tracking System Case Study Magnecomp Precision Technology PCL.
คงวฒ สงขพนธ
Khongwut Sangkaphan
สารนพนธนเปนสวนหนงของการศกษา
หลกสตรวทยาศาสตรมหาบณฑต สาขาวศวกรรมเครอขาย คณะวทยาการและเทคโนโลยสารสนเทศ
มหาวทยาลยเทคโนโลยมหานคร ปการศกษา 2561
ระบบคนหาเครอง Client ในระบบเครอขายดวย MAC Address กรณศกษา บรษท แมกเนคอมพ พรซชน เทคโนโลย จ ากด (มหาชน)
Network Client Tracking System Case Study Magnecomp Precision Technology PCL.
คงวฒ สงขพนธ
Khongwut Sangkaphan
สารนพนธนเปนสวนหนงของการศกษา
หลกสตรวทยาศาสตรมหาบณฑต สาขาวศวกรรมเครอขาย คณะวทยาการและเทคโนโลยสารสนเทศ
มหาวทยาลยเทคโนโลยมหานคร ปการศกษา 2561
I
หวขอ ระบบคนหาเครอง Client ในระบบเครอขายดวย MAC Address กรณศกษา บรษท แมกเนคอมพ พรซชน เทคโนโลย จ ากด (มหาชน) Network Client Tracking System Case Study Magnecomp
Precision Technology PCL. ชอนกศกษา นายคงวฒ สงขพนธ รหสนกศกษา 5617660008 หลกสตร วทยาศาสตรมหาบณฑต ปการศกษา 2561 อาจารยทปรกษา ดร.เอกรฐ รฐกาญจน
บทคดยอ
ในปจจบนองคกรภาคธรกจตงแตขนาดเลกขนไปลวนมความจ าเปนตองใชคอมพวเตอรและระบบเครอขายในการด าเนนธรกจ เชน การค านวน เกบบนทกขอมล การสอสาร การสบคนขอมล การพฒนาระบบ รวมถงการใชงานระบบบรหารจดการงานในองคกร เปนตน ยงองคกรทมขนาดใหญจงมระบบเครอขายขนาดใหญทออกแบบมารองรบจ านวนผใชงานจ านวนมาก ดวยเหตผลวาเมอระบบเครอขายภายในมขนาดใหญหากเกดปญหาทเกยวกบการใชงานระบบเครอขาย ผดแลระบบเครอขายจงใชเวลาในการตรวจสอบนานกวาจะพบสาเหตของปญหาจงท าใหแกปญหาไดลาชาสงผลใหผใชงานไมสามารถท างานไดในชวงเวลาทรอการแกปญหาจากผดแลระบบเครอขาย
จงเปนแรงจงใจท าใหผพฒนาไดคดคนระบบคนหาเครอง Client ในระบบเครอขายดวย MAC Address ในลกษณะของเวบแอพพลเคชนโดยเรยกใชงานผานทางหนาจอเวบบราวเซอร โดยใชภาษา PHP ในการพฒนาโปรแกรม ใช MySQL เปนระบบการจดการฐานขอมล และท างานอยบนระบบปฏบตการ Linux (Ubuntu) ซงระบบดงกลาวนนชวยใหผดแลระบบนนสามารถตรวจสอบไดวาเครอง Client ทเกดปญหานนเชอมตออยกบอปกรณ Switch ตวใด อนเตอรเฟสใด และอนเตอรเฟสนน ๆ ตงคาอยางไรไว ท าใหลดเวลาในการตรวจสอบและวเคราะหปญหาลงได
II
กตตกรรมประกาศ
สารนพนธนไดพฒนาจนส าเรจดวยด เพราะความกรณา ความชวยเหลอ และก าลงใจจากหลายทาน ขาพเจาขอขอบพระคณมา ณ ทน
ขอขอบพระคณทานอาจารย ดร.เอกรฐ รฐกาญจน เปนอยางสง ทเปนอาจารยทปรกษาและใหค าแนะน า ท าใหขาพเจาท างานไดส าเรจลลวง
ขอขอบพระคณคณาจารยทกทานในหลกสตรวศวกรรมเครอขาย ส าหรบค าปรกษาและประสทธประสาทวชาตาง ๆ
ขอขอบคณ ครอบครว ทใหก าลงใจ ใหโอกาส และชวยเหลอเรองทนการศกษา ขอบคณเพอน ๆ พ ๆ นอง ๆ ในหลกสตรวศวกรรมเครอขาย และ บรษท แมกเนคอมพ พรซชน
เทคโนโลย จ ากด (มหาชน) ทใหค าปรกษาในทก ๆ เรอง
คงวฒ สงขพนธ มนาคม 2562
III
สารบญ หนา
บทคดยอ ............................................................................................................................................ I กตตกรรมประกาศ............................................................................................................................. II สารบญ .............................................................................................................................................. III สารบญรป ......................................................................................................................................... V สารบญตาราง ................................................................................................................................. VIII บทท 1 บทน า ................................................................................................................................... 1
1.1 ปญหาและแรงจงใจ .................................................................................................................. 1
1.2 แนวทางในการแกไขปญหา ....................................................................................................... 1
1.3 จดประสงค ............................................................................................................................... 2
1.4 ขอบเขต .................................................................................................................................... 2
1.5 ประโยชนทคาดวาจะไดรบ ........................................................................................................ 2
1.6 ขนตอนการศกษา ..................................................................................................................... 3
1.7 โครงสรางของสารนพนธ ........................................................................................................... 3
บทท 2 พนฐานและทฤษฎทเกยวของ ............................................................................................... 4
2.1 Media Access Control Address (MAC Address) ............................................................... 4
2.2 MAC Address Table บนอปกรณ Switch Cisco ................................................................... 7
2.3 Simple Network Management Protocol (SNMP) .......................................................... 12
2.4 Professional Home Page (PHP) ........................................................................................ 16
2.5 MySQL .................................................................................................................................. 18
บทท 3 การออกแบบและพฒนาระบบ ............................................................................................ 21
3.1 แนวคดการออกแบบระบบงาน ............................................................................................... 21
3.2 โครงสรางของระบบประกอบดวย ........................................................................................... 22
3.3 การท างานของระบบ .............................................................................................................. 23
3.4 การออกแบบ Flowchart การท างานของระบบ ..................................................................... 24
3.5 การออกแบบฐานขอมล .......................................................................................................... 29
บทท 4 การทดลองและผลการทดลอง ............................................................................................ 33
4.1 เครองมอทใชในการทดลองและสภาพแวดลอม....................................................................... 33
4.2 รายละเอยดของการพฒนา ..................................................................................................... 33
4.3 ผลด าเนนงานและการทดลองระบบ ........................................................................................ 34
IV
สารบญ (ตอ) หนา
บทท 5 สรปผลการด าเนนงาน ........................................................................................................ 43
5.1 ผลการด าเนนโครงการ ............................................................................................................ 43
5.2 ปญหาและอปสรรค ................................................................................................................ 43
5.3 แนวทางการพฒนาในอนาคต .................................................................................................. 43
เอกสารอางอง ................................................................................................................................. 44
ภาคผนวก ก การตดตง Ubuntu 18.04 และ LAMP (Linux, Apache, MySQL, PHP) ................ 45
V
สารบญรป หนา
รปท 1.1 ภาพโครงสรางระบบเครอขายของบรษทฯ สาขาวงนอย .................................................. 3
รปท 2.1 แสดงโครงสรางของ MAC Address 48 Bits .................................................................. 4
รปท 2.2 แสดงคา MAC Address ของเครองคอมพวเตอรทใชระบบปฏบตการ Windows .......... 5
รปท 2.3 แสดงคา MAC Address ของเครองคอมพวเตอรทใชระบบปฏบตการ MAC OS ............ 6
รปท 2.4 แสดงคา MAC Address ของ Smart Phone ทใชระบบปฏบตการ IOS ........................ 6
รปท 2.5 แสดงคา MAC Address ของ Smart Phone ทใชระบบปฏบตการ Android ................ 7
รปท 2.6 แสดงผลลพธ เมอใชค าสง show mac address-table บนอปกรณ Switch Cisco ....... 8
รปท 2.7 แสดงผลลพธ เมอใชค าสง show mac address-table address 24b6.fd4e.aae6 ..... 9
รปท 2.8 แสดงผลลพธ เมอใชค าสง show mac address-table dynamic ................................. 9
รปท 2.9 แสดงผลลพธ เมอใชค าสง show mac address-table interface fastEthernet 0/20 ...................................................................................................... 10
รปท 2.10 แสดงผลลพธ เมอใชค าสง show mac address-table interface port-channel 1 .......................................................................................................... 10
รปท 2.11 แสดงผลลพธ เมอใชค าสง show mac address-table multicast ............................. 11
รปท 2.12 แสดงผลลพธ เมอใชค าสง show mac address-table static ..................................... 11
รปท 2.13 แสดงผลลพธ เมอใชค าสง show mac address-table vlan 529 ............................... 12
รปท 2.14 แสดงโครงสรางของการท างานของโปรโตคอล SNMP ................................................... 12
รปท 2.15 แสดงโครงสรางแบบตนไมของ MIB ............................................................................... 15
รปท 2.16 แสดงการท างานของ Web PHP ................................................................................... 17
รปท 3.1 แสดงโครงสรางจ าลองของระบบ ................................................................................... 21
รปท 3.2 แสดงภาพรวมการท างานของระบบ .............................................................................. 23
รปท 3.3 แสดง Flowchart ระบบ Login .................................................................................... 25
รปท 3.4 แสดง Flowchart ระบบจดการอปกรณ Switch .......................................................... 26
รปท 3.5 แสดง Flowchart ระบบคนหา Client ......................................................................... 27
รปท 3.6 แสดง Flowchart ระบบคอนฟกเรชนอปกรณ Switch................................................. 28
รปท 4.1 แสดงหนาจอลอกอนเขาสระบบ .................................................................................... 34
รปท 4.2 แสดงหนาจอ Dashboard เมอ Login เขาสระบบส าเรจ .............................................. 35
รปท 4.3 แสดงหนาจอ คนหาเครอง Client ในระบบ .................................................................. 35
รปท 4.4 แสดงผลลพธการคนหาเครอง Client ในระบบ ............................................................. 36
VI
สารบญรป (ตอ) หนา
รปท 4.5 แสดง History ของเครอง Client ทตองการ ................................................................. 36
รปท 4.6 แสดงหนาจอ บรหารจดการอปกรณ Switch ................................................................ 37
รปท 4.7 แสดงหนาจอการเพมอปกรณ Switch ........................................................................... 37
รปท 4.8 แสดงหนาจอรายละเอยดของอปกรณ Switch .............................................................. 38
รปท 4.9 หนาจอแสดงคาคอนฟกเรชนของอนเตอรเฟสบนอปกรณ Switch ................................ 38
รปท 4.10 แสดงหนาจอ ส าหรบสงคาคอนฟกเรชน ........................................................................ 39
รปท 4.11 แสดงหนาจอเมอสงคาคอนฟกเรชนแบบ Switch Port Access VLAN ........................ 39
รปท 4.12 แสดงหนาจอเมอสงคาคอนฟกเรชนแบบ Switch Port Dot1X Authentication ........ 40
รปท 4.13 แสดงหนาจอเมอสงคา Save คอนฟกเรชน ................................................................... 40
รปท 4.14 แสดงหนาจอหลกส าหรบบรหารจดการผใชงานระบบ ................................................... 41
รปท 4.15 แสดงหนาจอเพมผใชงาน .............................................................................................. 41
รปท 4.16 แสดงหนาจอรายละเอยดผใชงาน .................................................................................. 42
รปท 4.17 แสดงหนาจอ Update รายละเอยดผใชงาน .................................................................. 42 รปท ก.1 Download Ubuntu Server ....................................................................................... 46
รปท ก.2 Login เขาสระบบ VMware vSphere Client ............................................................. 46
รปท ก.3 การสราง Visual Machine (1) ..................................................................................... 47
รปท ก.4 การสราง Visual Machine (2) ..................................................................................... 47
รปท ก.5 การสราง Visual Machine (3) ..................................................................................... 48
รปท ก.6 การสราง Visual Machine (4) ..................................................................................... 48
รปท ก.7 การสราง Visual Machine (5) ..................................................................................... 49
รปท ก.8 การสราง Visual Machine (6) ..................................................................................... 49
รปท ก.9 การสราง Visual Machine (7) ..................................................................................... 50
รปท ก.10 การสราง Visual Machine (8) ..................................................................................... 50
รปท ก.11 การสราง Visual Machine (9) ..................................................................................... 51
รปท ก.12 การตดตง Ubuntu 18.04 LTS (1) .............................................................................. 51
รปท ก.13 การตดตง Ubuntu 18.04 LTS (2) .............................................................................. 52
รปท ก.14 การตดตง Ubuntu 18.04 LTS (3) .............................................................................. 52
รปท ก.15 การตดตง Ubuntu 18.04 LTS (4) .............................................................................. 53
รปท ก.16 การตดตง Ubuntu 18.04 LTS (5) .............................................................................. 53
VII
สารบญรป (ตอ) หนา
รปท ก.17 การตดตง Ubuntu 18.04 LTS (6) .............................................................................. 54
รปท ก.18 การตดตง Ubuntu 18.04 LTS (7) .............................................................................. 54
รปท ก.19 การตดตง Ubuntu 18.04 LTS (8) .............................................................................. 55
รปท ก.20 การตดตง Ubuntu 18.04 LTS (9) .............................................................................. 55
รปท ก.21 การตดตง Ubuntu 18.04 LTS (10) ............................................................................ 56
รปท ก.22 การตดตง Ubuntu 18.04 LTS (11) ............................................................................ 56
รปท ก.23 การตดตง Ubuntu 18.04 LTS (12) ............................................................................ 57
รปท ก.24 การตดตง Ubuntu 18.04 LTS (13) ............................................................................ 57
รปท ก.25 การตดตง Ubuntu 18.04 LTS (14) ............................................................................ 58
รปท ก.26 การตดตง Ubuntu 18.04 LTS (15) ............................................................................ 58
รปท ก.27 การตดตง Apache ....................................................................................................... 59
รปท ก.28 แสดง Status ของ Apache ......................................................................................... 59
รปท ก.29 การตดตง MariaDB ...................................................................................................... 60
รปท ก.30 แสดง Status ของ MySQL .......................................................................................... 60
รปท ก.31 แสดงการตงคาความปลอยภยใหกบ MySQL ................................................................ 61
รปท ก.32 การตดตง PHP .............................................................................................................. 62
รปท ก.33 การทดสอบ PHP .......................................................................................................... 62
รปท ก.34 การตดตง phpMyAdmin ............................................................................................. 63
รปท ก.35 การตงคา phpMyAdmin (1) ....................................................................................... 63
รปท ก.36 การตงคา phpMyAdmin (2) ....................................................................................... 64
รปท ก.37 การตงคา phpMyAdmin (3) ....................................................................................... 64
รปท ก.38 การตงคา Username และ Password ใหกบ phpMyAdmin ..................................... 65
รปท ก.39 การเขาใชงาน phpMyAdmin ...................................................................................... 65
VIII
สารบญตาราง หนา
ตารางท 2.1 แสดงตวเลอกส าหรบค าสง show mac address-table ............................................ 8
ตารางท 2.2 แสดงรายละเอยดของขอมลตาง ๆ ใน PDU .............................................................. 13
ตารางท 3.1 แสดงรายละเอยดของตาราง NM_DEVICE ............................................................... 29
ตารางท 3.2 แสดงรายละเอยดของตาราง NM_LOGS .................................................................. 30
ตารางท 3.3 แสดงรายละเอยดของตาราง NM_VLAN_MAC ........................................................ 30
ตารางท 3.4 แสดงรายละเอยดของตาราง USER ........................................................................... 31
ตารางท 3.5 แสดงรายละเอยดของตาราง NM_MAC_ADDRESS ................................................. 31
ตารางท 3.6 แสดงรายละเอยดของตาราง NM_VLAN .................................................................. 31
ตารางท 3.7 แสดงรายละเอยดของตาราง USER_PROFILE .......................................................... 32
1
บทท 1 บทน า
1.1 ปญหาและแรงจงใจ
บรษท แมกเนคอมพ พรซชน เทคโนโลย จ ากด (มหาชน) เปนองคกรขนาดใหญมเครอง Client ทใชงานระบบเครอขายเปนจ านวนมาก และหลากหลายชนด อาทเชน คอมพวเตอร (Computer) ปรนเตอร (Printer) และ ไอพคาเมรา (IP Camera) เปนตน จงหลกเลยงไมไดเลยทจะพบปญหาเกยวกบการใชงานระบบเครอขายอยบอยครง หากพบปญหาการใชงานระบบเครอขาย ในเบองตนผใชงานจะท าการแจงปญหากบทมไอทซพพอรต (IT Support) หากทมไอทซพพอรตไมสามารถแกปญหาไดกจะท าการสงเรองมาใหทางผดแลระบบเครอขายด าเนนการตอไป ท าใหแกปญหาไดลาชาโดยเฉพาะเวลากลางคน ซงเปนชวงนอกเวลาท างานของผดแลระบบเครอขาย
จากปญหาทพบปจจบน บรษท แมกเนคอมพ พรซชน เทคโนโลย จ ากด (มหาชน) และดวยจ านวนบคลากรทท าหนาทดแลระบบเครอขายมจ ากดและไมไดท างานตลอด 24 ชวโมง อกทงทมไอทซพพอรต ไมมพนฐานในการก าหนดและตงคาอปกรณ Switch ในรปแบบ สวนตอ ประสานรายค าสง (Command-line interface) อาจสงผลใหเกดการผดพลาดตอระบบเครอขาย ดงนน
โครงงานนจงน าเสนอ ระบบคนหาเครอง Client ในระบบเครอขายดวย MAC Address สามารถท าการคนหาเครอง Client ทเกดปญหา ตรวจสอบปญหา และตงคาอปกรณเครอขาย ผานทางสวนตอประสานกราฟกกบผใช (Graphical user interface) เพออ านวยความสะดวกในการตรวจสอบและแกปญหา ลดขอผดพลาดตาง ๆ ในการใชชดค าสงแบบสวนตอประสานรายค าสง ในการบรหารจดการอปกรณ Switch 1.2 แนวทางในการแกไขปญหา
จากการศกษาวตถประสงคในการจดท าโครงงานน จงน าเสนอ ระบบคนหาเครอง Client ในระบบเครอขายดวย Mac Address ในรปแบบของเวบอนเตอรเฟส (Web interface) บนระบบปฏบตการลนกซ (Linux) เพออ านวยความสะดวก ในการคนหาเครอง Client ทเกดปญหา ตรวจสอบปญหา และตงคาอปกรณ Switch รวมถงการลดขอผดพลาดในการก าหนดชดคาค าสง และงายตอการใชงานยงขน โดยทมไอทซพพอรตและผดแลระบบเครอขายสามารถควบคมการจดการอปกรณ Switch ผานทางหนาเวบจากหนวยงานได
2
1.3 จดประสงค 1) คนหาเครอง Client ในระบบเครอขายแลนผานทางสวนตอประสานกราฟกกบผใช 2) ตรวจสอบและก าหนดคาอปกรณ Switch ผานทางสวนตอประสานกราฟกกบผใช 3) ลดระยะเวลาในการตรวจสอบและแกปญหาการใชงานระบบเครอขาย
1.4 ขอบเขต
1) ท าการศกษาระบบเครอขายปจจบนขององคกรเพอท าโครงงาน 2) พฒนาระบบในรปแบบของเวบอนเตอรเฟส 3) ระบบสามารถ คนหา เครอง Client ในระบบเครอขายแลน ดวย Mac Address ไดวา
เชอมตออยกบอปกรณ Switch ตวใด และอนเตอรเฟส (Interface) ใดได 4) ระบบสามารถ แสดงคาการตงคาปจจบน ในแตละอนเตอรเฟสบนอปกรณ Switch ได 5) ระบบสามารถ ตงคา อนเตอรเฟสบนอปกรณ Switch ได ดงน
5.1) ตงคา VLAN 5.2) ตงคา 802.1X
6) ระบบสามารถ มอนเตอรรง (Monitoring) อปกรณ Switch ดวย Protocol SNMP ได ดงน 6.1) Hostname 6.2) Description 6.3) Uptime 6.4) Version 6.5) Serial number 6.6) Firmware
7) ระบบสามารถจดท ารายงานแสดงขอมลเครอง Client ในระบบเครอขายแลนได 1.5 ประโยชนทคาดวาจะไดรบ
1) มระบบคนหาเครอง Client ในระบบเครอขายดวย Mac Address มาใชงานในองคกร 2) ทมไอทซพพอรตและผดแลระบบเครอขายสามารถตรวจสอบ บรหารจดการและแกปญหา
ไดรวดเรว 3) ไดความรเกยวกบชดค าสงของอปกรณ Switch และการท างานของ Protocol SNMP
3
1.6 ขนตอนการศกษา
รปท 1.1 ภาพโครงสรางระบบเครอขายของบรษทฯ สาขาวงนอย 1) ศกษาระบบเครอขายภายในขององคกรเพอจดท าโครงงาน 2) ออกแบบและพฒนาระบบฐานขอมล การดงและรบคาจากอปกรณเครอขาย การตงคา
อปกรณเครอขายผานสวนตอประสานกราฟกกบผใช 3) ทดสอบและใชงานระบบ
1.7 โครงสรางของสารนพนธ
บทท 1 บทน า กลาวถงปญหาและแรงจงใจ วตถประสงคและขอบเขตในการท าโครงงาน บทท 2 พนฐานและทฤษฎทเกยวของ กลาวถงทฤษฎทเกยวของในสวนตาง ๆ ทไดน ามา
ประยกตใช ในโครงงาน บทท 3 การออกแบบและพฒนาระบบ กลาวถงขนตอนในการออกแบบ และกระบวนการท างาน
ของระบบวาท างานอยางไร บทท 4 การทดลองและผลการทดลอง กลาวถงการทดลอง และผลทไดรบจากการทดลอง บทท 5 สรปผลการด าเนนงาน กลาวถงผลสรปของโครงงานทงหมด รวมทงแนวทางในการพฒนา
โครงงานนตอไปในอนาคต
4
บทท 2 พนฐานและทฤษฎทเกยวของ
2.1 Media Access Control Address (MAC Address)
ใน Network Interface ของอปกรณเครอขายทกชนดทรองรบมาตรฐาน 802.11 จะมการระบ MAC Address แบบ 48 Bits Layer 2 ซงจะถาวรและไมซ ากน คา MAC Address จะถกก าหนดจากบรษทผผลตอปกรณตงแตเรมผลต เชน อปกรณ Network Interface Card (NIC) จะมคา MAC Address ประจ าตวทไมซ ากนและไมสามารถแกไขได เพอเปนการการนตวา MAC Address จะไมมทางซ ากน ทางสถาบนวศวกรรมไฟฟาและวศวกรรมอเลกทรอนกสนานาชาต หรอ Institute of Electrical and Electronic Engineers (IEEE) จะท าการก าหนด Block Address ใหกบองคกรทมาลงทะเบยน และท าการเรยกเกบคาธรรมเนยม MAC Address Block Large (MA-L) เปนกลม MAC Address ขนาดใหญ หรอทรจกกนในนาม Organizationally Unique Identifier (OUI) [1] อาจซอไดและไดรบการลงทะเบยนโดย IEEE ซงทาง IEEE จะควบคมและรบผดชอบตอ Address 3 หลกแรกจาก Address ทงหมด 6 หลก หรอ 3 byte แรก และผผลตมอสระทจะก าหนดตวเลข 3 หลกหลงภายใตเงอนไขคอ หามก าหนด Address ซ ากน
8 Bits
01 23 45 67 89 AB: : : : :6 Bytes
B7 B6 B5 B4 B3 B2 B1 B0
0 = Unicast1 = Mult icast
0 = Globally Unique (OUI enforced)1 = Locally Administered
Organizational Unique Identifier (OUI)
Vendor Assigned(NIC Cards, Interfaces)
รปท 2.1 แสดงโครงสรางของ MAC Address 48 Bits
2.1.1 วธตรวจสอบคา MAC Address ส าหรบเครองคอมพวเตอร PC หรอ คอมพวเตอร Laptop และ Smart Phone
5
2.1.1.1 การตรวจสอบคา MAC Address ของเครองคอมพวเตอรทใชระบบปฏบตการ Windows เมอเปดเครองคอมพวเตอรเรยบรอยแลว กดแปนโลโก Windows บนคยบอรด จากนนพมพ cmd แลวกดปม Enter เมอพบหนาตาง Command Prompt ใหพมพ ipconfig /all แลวกดปม Enter คอมพวเตอรจะสงขอมลรายละเอยด Network Interface Card และแสดงขอมลการเชอมตอระบบเครอขายทงหมดของคอมพวเตอร ดงรปท 2.2
รปท 2.2 แสดงคา MAC Address ของเครองคอมพวเตอรทใชระบบปฏบตการ Windows
2.1.1.2 การตรวจสอบคา MAC Address ของเครองคอมพวเตอรทใชระบบปฏบตการ MAC OS ใหคลกท Apple ไอคอน อยทมมซายบนของเดสกทอป จากนนคลก System Preferences แลวเลอก Network เลอก Network Interface ทตองการ จากนนคลก Advanced แลวเลอกทแถบ Hardware จะพบ MAC Address ของคอมพวเตอร ดงรปท 2.3
6
รปท 2.3 แสดงคา MAC Address ของเครองคอมพวเตอรทใชระบบปฏบตการ MAC OS
2.1.1.3 การตรวจสอบคา MAC Address ของ Smart Phone ทใชระบบปฏบตการ IOS โดยการเขาท Settings แลวเลอก General จากนนเลอก About จะพบ MAC Address ของ Wi-Fi Adapter บน Smart Phone ทใชระบบปฏบตการ IOS ดงรปท 2.4
รปท 2.4 แสดงคา MAC Address ของ Smart Phone ทใชระบบปฏบตการ IOS
7
2.1.1.4 การตรวจสอบคา MAC Address ของ Smart Phone ทใชระบบปฏบตการ Android โดยการเขาท Settings แลวเลอก About Phone จากนนเลอก Status จะพบ MAC Address ของ Wi-Fi Adapter บน Smart Phone ทใชระบบปฏบตการ Android ดงรปท 2.5
รปท 2.5 แสดงคา MAC Address ของ Smart Phone ทใชระบบปฏบตการ Android 2.2 MAC Address Table บนอปกรณ Switch Cisco
วรนทร เมฆประดษฐสน [2] ไดกลาวถงหลกการท างานของระบบ Switching ใชหลกการน าเอา Frame ขอมลมาตรวจสอบ MAC Address รวมทงคาอน ๆ ทจ าเปนเพอตรวจสอบความสมบรณของ Frame จากนนจะด าเนนการตรวจสอบหาผรบจากหมายเลข MAC Address ทระบบน Frame แลวน าไปเทยบกบขอมลในตารางทเรยกวา MAC Address Table โดยตารางดงกลาวถกสรางขนจากการ Learning จากอปกรณตาง ๆ ทเชอมตอกบอปกรณ Switch การท Switch รวามอปกรณใดเชอมตอกบ Port ใดบน Switch นน เปนผลมาจากการอานคา MAC Address ของอปกรณตนทางทสง Frame เขามาจากนนจงน าคานมาสรางเปนตาราง และน ามาใชเพอคนหาวาอปกรณปลายทางอย Port ใดบน Switch ขอมลในตาราง MAC Address Table นนมอาย 300 วนาท หรอ 5 นาท เทานน เมอถงเวลา Switch จะท าการ Flush MAC Address ในตารางทงและท าการ Learning ใหม
วธการแสดงขอมลเกยวกบ MAC Address Table บนอปกรณ Switch Cisco นนสามารถใช ค าสง show mac address-table อปกรณ Switch จะแสดงขอมลของ MAC Address Table ทงหมดทมบนอปกรณออกมา ดงรปท 2.6
8
รปท 2.6 แสดงผลลพธ เมอใชค าสง show mac address-table บนอปกรณ Switch Cisco
ทงนค าสง show mac address-table ยงสามารถเพมตวเลอกเขาไปเพอใหไดผลลพธแบบเฉพาะเจาะจง หรอเฉพาะแคบางสวนทตองการ ซงวธการเพมตวเลอกของค าสงมดงน show mac address-table [address mac-address] [dynamic | multicast | static] [interface {ethernet slot/port | port-channel number}] [vlan vlan-id] โดยรายละเอยดของตวเลอกทงหมด แสดงอยในตารางท 2.1
ตารางท 2.1 แสดงตวเลอกส าหรบค าสง show mac address-table
ค าสง รายละเอยด address mac-address แสดงขอมลเฉพาะ MAC Address นน ๆ
dynamic แสดงขอมลเฉพาะ MAC Address Table ทเปน Dynamic เทานน interface แสดงขอมลเฉพาะ MAC Address เฉพาะ Interface ทตองการ
port-channel number แสดงขอมลเฉพาะ MAC Address เฉพาะ EtherChannel interface ตงแต 1 - 4096
9
ตารางท 2.1 แสดงตวเลอกส าหรบค าสง show mac address-table (ตอ)
ค าสง รายละเอยด multicast แสดงขอมลเฉพาะ MAC Address Table ทเปน Multicast MAC
Address เทานน static แสดงขอมลเฉพาะ MAC Address Table ทเปน Static เทานน
vlan vlan-id แสดงขอมลเฉพาะ MAC Address เฉพาะ VLAN ทตองการ ตงแต 1 – 4096
ตวอยางการใชค าสง show mac address-table และเพมตวเลอก address mac-address
คอ show mac address-table address 24b6.fd4e.aae6 ไดผลลพธ ดงรปท 2.7
รปท 2.7 แสดงผลลพธ เมอใชค าสง show mac address-table address 24b6.fd4e.aae6
ตวอยางการใชค าสง show mac address-table และเพมตวเลอก dynamic คอ show mac address-table dynamic ไดผลลพธ ดงรปท 2.8
รปท 2.8 แสดงผลลพธ เมอใชค าสง show mac address-table dynamic
10
ตวอยางการใชค าสง show mac address-table และเพมตวเลอก interface คอ show mac address-table interface fastEthernet 0/20 ไดผลลพธ ดงรปท 2.9
รปท 2.9 แสดงผลลพธ เมอใชค าสง show mac address-table interface fastEthernet 0/20
ตวอยางการใชค าสง show mac address-table และเพมตวเลอก port-channel คอ show mac address-table interface port-channel 1 ไดผลลพธ ดงรปท 2.10
รปท 2.10 แสดงผลลพธ เมอใชค าสง show mac address-table interface port-channel 1
ตวอยางการใชค าสง show mac address-table และเพมตวเลอก multicast คอ show mac address-table multicast ไดผลลพธ ดงรปท 2.11
11
รปท 2.11 แสดงผลลพธ เมอใชค าสง show mac address-table multicast
ตวอยางการใชค าสง show mac address-table และเพมตวเลอก static คอ show mac address-table static ไดผลลพธ ดงรปท 2.12
รปท 2.12 แสดงผลลพธ เมอใชค าสง show mac address-table static
ตวอยางการใชค าสง show mac address-table และเพมตวเลอก vlan คอ show mac address-table vlan 529 ไดผลลพธ ดงรปท 2.13
12
รปท 2.13 แสดงผลลพธ เมอใชค าสง show mac address-table vlan 529 2.3 Simple Network Management Protocol (SNMP)
SNMP เปนโปรโตคอลทท างานโดยมโครงสรางการท างานแบบ Manager และ Agent ประกอบดวย Manager, Agent, Database of management information, Managed objects และ Network โปรโตคอล สวนของ Manager ท าหนาทจดการระหวางผใชงานกบระบบบรหารจดการเครอขาย Agent ท าหนาทตดตอสอสารระหวาง Manager และอปกรณทมการจดการทางกายภาพ เชน อปกรณ Switch เราเตอร หรอ เซรฟเวอร องคประกอบทมการจดการเหลานอาจเปนฮารดแวรทมคอนฟกเรชน, สถตประสทธภาพและอน ๆ องคประกอบเหลานจดอยในสงทเรยกวา ฐานขอมล ขอมลเสมอนทเรยกวา Management Information Base หรอทเรยกวา MIB SNMP ชวยให Manager และ Agent สามารถตดตอสอสารเพอวตถประสงคในเขาถง Objects เหลาน
Network
Manager
Appli cation Application
NMS
Manager
Appli cation Application
NMS
SNMPAgentProtocolEngine
MIB
SNMPAgentProtocolEngine
MIB
SNMPAgentProtocolEngine
MIB
Read or Change Conf igurationRead or Change StatusRead Per formance or Error Status
Respond to RequestsReport Problems
RequestRespond
รปท 2.14 แสดงโครงสรางของการท างานของโปรโตคอล SNMP
13
SNMP จะใช 5 Message พนฐานประกอบไปดวย Get, GetNext, GetResponse, Set และ Trap เพอใชสอสารระหวาง Manager และ Agent ขอความ Get and GetNext จะอนญาตให Manager ขอขอมลส าหรบตวแปรเฉพาะเมอ Agent ไดรบขอความ Get หรอ GetNext จะสงขอความ GetResponse กลบไปท Manager โดยขอมลทตอบกลบจะมทงขอมลทรองขอหรอขอบงชขอผดพลาดวาเหตใดค าขอไมสามารถด าเนนการได ขอความ Set จะให Manager รองขอเปลยนคาของตวแปรเฉพาะในกรณทมการรโมตทจะใชงานรเลย แลว Agent จะตอบสนองดวยขอความ GetResponse ซงจะตอบวามการเปลยนแปลงหรอมขอบงชขอผดพลาดจากสาเหตใดจงไมสามารถท าการเปลยนตวแปรได Trap message นนจงชวยให Agent สามารถแจงขอมลไดอยางอสระตอ Manager ในเหตการณส าคญทเกดขน
ตามทรกนวาสวนใหญ message (Get, GetNext และ Set) จะถกสงโดย Manager SNMP เนองจากจะมเพยง Trap message เทานนททาง Agent เปนผสามารถเรมเปนฝายสงกอน ซงจะเปนขอความทใชโดยหนวย Remote Telemetry Units (RTUs) เพอรายงานการเตอนภย และแจงให Manager SNMP ทราบทนททมการเตอนภยเกดขน แทนทจะรอให Manager SNMP ถาม
รปแบบของ SNMP Message ประกอบดวย 3 สวนคอ รน (Version) ของ Message ทสงไปรหสผาน (Community String) โดยในทก Agent จะม 2 ตวเพอใชส าหรบการอานและการเปลยนแปลงคาของ MIB รหสผานส าหรบการอานนนจะใชใน Message Get-Request และ Get-Next-Request โดยทวไปจะก าหนดเปน “Public” และ “Private” สวนรหสผานส าหรบการเปลยนแปลงคา MIB จะใชใน Message Set-Request, สวนประกอบตวสดทายคอ SNMP Protocol Data Unit (PDU) ใชเปนสวนทเกบรายละเอยดของ Message ทตองการรายละเอยดของขอมลใน PDU แสดงตามตารางท 2.2
ตารางท 2.2 แสดงรายละเอยดของขอมลตาง ๆ ใน PDU ขอมล ค าอธบาย
PDU Type ชนดของ SNMP Message
request-id หมายเลข Message ท Manager ก าหนดใหกบ Message ทสงไปให Agent โดยจะสง request-id กลบมาพรอมกบ Message ทตอบกลบ มาให Manager ดวยเพอบอกวา Message ท Manager สงไปนนไปรบ การตอบสนอง
Error-status และ error-index
ขอมลทงสองตวนจะใชรวมกนในการบอกสาเหตของความผดพลาดทเกดขนในการตดตอกบ Agent หากไมมคาผดพลาดจะเปน 0 ทงค
Variable-binding ประกอบดวยรายชอของ OID และคาของมนโดยใน Get-Request และ Get-Next-Request คาของ OID จะเปน NULL เมอ Agent สง Get-Response กลบมาคาของ OID จะถกเปลยนเปนขอมลของ OID ทอยในอปกรณท Agent ท างานอย
14
ตารางท 2.2 แสดงรายละเอยดของขอมลตาง ๆ ใน PDU (ตอ)
ขอมล ค าอธบาย enterprise ชนดของอปกรณทสราง Trap ขนมา
agent-addr ทอยของอปกรณทสราง Trap
generic-trap รหสของ Trap เชน Cold Start (0) , Warm Start (1) specific-trap หมายเลขของ Trap
time stamp ชวงเวลาตงแตเรมตนท างานของอปกรณจนถงเวลาท Trap ถกสรางขน
SNMP ถกพฒนาอยางตอเนองตงแต SNMPv1 จนถงปจจบนคอ SNMPv3 โดยในรน 1 และ 2 มลกษณะของการท างานคลายๆ กน แตตางกนตรงทรนท 2 ไดท าการพฒนาเพอยกระดบความสามารถและประสทธภาพของการท างานจากรนท 1 เชน เพมค าสงทใชจดการระบบเครอขายเพมกลมของ Object ภายใน MIB เปนตน แตวตถประสงคหลกอนหนงในการพฒนา SNMPv2 ทยงไมประสบความส าเรจ คอการยกระดบในดานความปลอดภย ตอมาจงไดมการพฒนากลายมาเปน SNMPv3 ตามมาตรฐานของ RFC 2574 ซงไดมการแกไขปญหาความไมปลอดภย SNMP ทงสองรนกอนหนาน
2.3.1 Management Information Base (MIB)
เปนฐานขอมลทใชเกบขอมลสารสนเทศเพอการจดการเกบตวแปรและก าหนดคาการท างานของอปกรณเครอขาย ซงเรยกวา Managed Object แตละ Object จะมชอเรยกเฉพาะ เรยกวา OID (Object Identifier) โดยมการก าหนดชอแบบของขอมล สทธการเขาถงและคาของขอมล ตามขอก าหนดทเรยกวา โครงสรางของขอมลส าหรบการจดการ หรอ SMI (Structure of Management Information) โครงสรางของขอมล ส าหรบการจดการถกก าหนดไวตามมาตรฐาน RFC 1155 โดยไดท าการวางกรอบส าหรบโครงสรางฐานขอมล MIB เอาไวโดยก าหนดชนดของขอมลและชอแทน Object ตาง ๆ ไวใชส าหรบ MIB โดยหลกการนน จะถกก าหนดเอาไวงาย ๆ ไมมความซบซอน คอมลกษณะโครงสรางแบบตนไม (Tree) ประกอบไปดวยโหนด (Node) หรอใบ (Leaf) และกงกานสาขาตาง ๆ เรยงกนตามลาดบชน (Hierarchical) โดย Node บนสดของตนไมเรยกวาราก (Root) ท าใหไมเกดความขดแยงกบการออกแบบการจดการของ OSI (Open Systems Interconnection) และสามารถขยายเพมเตมชนดของขอมลเพมเตมไดในอนาคตโดย MIB จะมชนดของขอมล 2 แบบ คอ แบบทเปนขอมลทอานคาได โดยตรงเปนตวๆ (Scalar) กบแบบขอมล ทเปนชด (Array of Scalar) เพอความเปนมาตรฐาน ส าหรบผผลตอปกรณในระบบเครอขายทาง SMI (Structure Of Management Information) จงไดวางขอก าหนดส าหรบใหผผลตอปกรณ ปฏบตใหสอดคลองกบแนวทางทวางไวเพอท าใหสามารถรองรบการท างานของ SNMP ได โดยการก าหนดมาตรฐานทวไปโดยการวางโครงสรางพนฐานของ MIB ก าหนดมาตรฐานทวไปส าหรบ Object แตละตวโดยก าหนดไวยากรณและคาทเปนไปไดและก าหนด
15
มาตรฐานการเขารหสคาของ Object นน ๆ ชนดขอมลของ Management Object (Data Type) ม 32 ชนด
MIB II ถกก าหนดตามมาตรฐาน RFC 1213 เปน MIB รนปจจบนทปรบปรงจาก MIB ในบางสวนเพอใหครอบคลมถงขอมลทเกดขนใหมเชน ATM, Host Management, Directory Service Management และเทคโนโลยใหมอน ๆ โครงสรางของฐานขอมล MIB II ถกก าหนดโดย ISO และ CCITT มลกษณะเปนตนไมซงตองมการอางองเปนล าดบชน และใช OID เปนชอในการระบต าแหนงของขอมลประกอบดวยตวเลขและจดทศนยม โดยตวเลขซายสดจะเปนหมายเลขรากของตนไม จากนนกจะเปนหมายเลขของโหนด ซงจะไลลงมาจนถงโหนดทตองการ MIB II นนจะประกอบดวยกลมพนฐาน เชน 1.3.6.1.4.1.2682.1 แสดงดงภาพท 2.15
root
ccit (0) iso (1) joint-iso-ccit (3)
org (3)
dod (6)
internet (1)
mgmt (2)directory (1) experimental (3) private (4)
enterprises (1)
dpsinc (2682)
dpsAlarmControl (1)
TMonXM (1) dpsRTU (2)
รปท 2.15 แสดงโครงสรางแบบตนไมของ MIB
16
2.4 Professional Home Page (PHP) กตตศกด เจรญโภค านนท [3] ไดกลาวถงประวตของ PHP ยอมาจากค าวา Personal Home
Page Tool ภาษา script อยางหนงทเรยกวา server-side script ซงจะท างาน ในฝง server แลวสงการแสดงผลมายง browser ของตว client และนอกจากนยงเปน script ท embed บน HTML ไดรบการเผยแพรเปนครงแรกในป ค.ศ.1994 จากนนกมการพฒนาตอมาตามล าดบ เปนเวอรชน 1 ในป 1995 เวอรชน 2 ในชวงระหวาง 1995-1997 และเวอรชน 3 ชวง 1997 ถง 1999 จนถงเวอรชน 7 ในปจจบน
PHP เปนผลงานทเตบโตมาจากกลมของนกพฒนาในเชงเปดเผยรหสตนฉบบหรอ Open Source ดงนน PHP จงมการพฒนาไปอยางรวดเรวและแพรหลายโดยเฉพาะอยางยง เมอใชรวมกบ Apache Webserver ระบบปฏบตอยางเชน Linux หรอ FreeBSD เปนตน ในปจจบน PHP สามารถใชรวมกบ Web Server หลายๆ ตวบนระบบปฏบตการอยางเชน Windows XP/7/8/10 และ Windows Server เปนตน
คณสมบตทโดดเดนทสดของ PHP สามารถตดตอกบโปรแกรมจดการระบบฐานขอมล ทมอยมากมาย ไดแก mSQL, MySQL, Oracle, PostgreSQL, SQL Server, Microsoft Access ระบบรกษาความปลอดภยของ Web Page การรบ-สง Cookies, Session เปนตน
นอกจากนยงส ามารถตดตอกบบรการตาง ๆ ผานทาง โปรโตคอล เชน IMAP, SNMP, NNTP, POP3, HTTP และตดตอกบ Socket ไดอกดวย
2.4.1 การท างาน Web PHP ทพฒนาดวยภาษา Script PHP
กตตศกด เจรญโภค านนท [3] ไดกลาวถงขนตอนการท างานของ Web PHP สามารถอธบายเปนขนตอนไดดงน
ขนตอนท 1 ฝงเครอง Client จะท าการรองขอหรอเรยกใชงานไฟล PHP ทเกบในเครอง Server
ขนตอนท 2 ฝง Server จะท าการคนหาไฟล PHP ตวทถกรองขอแลวท าการประมวลผลไฟล PHP ตามท Client ท าการรองขอมา
ขนตอนท 3 ท าการประมวลผลไฟล PHP ขนตอนท 4 และ 5 เปนการตดตอกบฐานขอมลและน าขอมลในฐานขอมลมาใชรวมกบ
การประมวลผล ขนตอนท 6 สงผลลพธจากการประมวลผลไปใหเครอง Client
17
Database
PHP Scripts Server
Server PHP Client
Client RequestHTTP-Port 80
1 2
45
3
6
รปท 2.16 แสดงการท างานของ Web PHP
2.4.2 ขอดของการใช PHP ขอดหลายประการทเลอก PHP ในการพฒนาเปน Web Application มดงน 1) ความรวดเรวในการพฒนาโปรแกรม เพราะวา PHP เปนสครปตแบบ Embedded
คอ สามารถแทรกรวมกบภาษา HTML ไดอยางอสระและหากพฒนาโคดไวในรปแบบของ Class ทเขยนขนเพยงครงเดยวแลวเรยกใชงานไดตลอดท าใหสะดวกและรวดเรว ตอการพฒนาโปรแกรมตาง ๆ
2) PHP เปนโคดแบบเปดเผยท าใหสามารถแกไข ดดแปลง Source Code ไดหมด ทเปดใหใครกไดบนโลกนสามารถเขามาพฒนาโปรแกรมได ดงนนจงมนกพฒนาโปรแกรม หลายคนจงท าใหโปรแกรมมประสทธภาพสงและเนองจาก PHP มกลมผใชงานอยเปนจ านวนมากทวโลก และมเวบไซต อยเปนจ านวนมากทเปนแหลงรวบรวม Source Code ท าใหผใชมอใหม ๆ หรอผทตองการศกษาสามารถคนหาเพอเปนแนวทางในการพฒนาโปรแกรมไดงายขน
3) การบรหารหนวยความจ ามการใชงานหนวยความจ าทด คอ PHP จะไมเรยกใชหนวยความตลอดเวลาท าให Server ไมจ าเปนตองมทรพยากรมากนก
4) อสระตอระบบปฏบตการ Web Application ทถกสรางขนมาสามารถทจะท างานไดหลายระบบปฏบตการไมวาจะเปน Unix, Linux หรอ Windows
18
2.4.3 ขอดอยของการใช PHP อยางไรกตาม PHP กยงมขอดอยบางประการคอ 1) เนองจากโคดของ PHP จะถกประมวลผลทเซรฟเวอร ดงนนการท างานในแตละ
ครงขอมลจะตองถกสงผานระบบอนเตอรเนตไปท างานทเซรฟเวอรหลงจากนนเซรฟเวอรจะสงผลลพธกลบมาอกครงเพอแสดงผลทบราวเซอร
2) การใช PHP บางค าสงทเคยใชในเวอรชนเกา ๆ กไมสามารถใชไดกบเวอรชนใหมได เนองจาก PHP เปนโคดทเปนลกษณะแบบเปดเผยเกดจากการพฒนาจากนกโปรแกรมเมอรหลายกลม
2.5 MySQL
เปนระบบจดการฐานขอมลเชงสมพนธ (RDBMS: Relational Database Management System) ตวหนง ซงเปนทนยมกนมากในปจจบน โดยเฉพาะอยางยงในโลกของอนเตอรเนต สาเหตเพราะวา MySQL เปนฟรแวรทางดานฐานขอมลทมประสทธภาพสง เปนทางเลอกใหมจากผลตภณฑระบบจดการฐานขอมลในปจจบน ทมกจะเปนการผกขาดของผลตภณฑเพยงไมกตว นกพฒนาระบบฐานขอมลทเคยใช MySQL ตางยอมรบในความสามารถความรวดเรว การรองรบจ านวนผใช และขนาดของขอมลจ านวนมหาศาล ทงยงสนบสนนการใชงานบนระบบปฏบตการมากมาย ไมวาจะเปน Unix, OS/2, Mac OS หรอ Windows กตาม นอกจากน MySQL ยงสามารถใชงานรวมกบ Web Development Platform ทงหลาย ไมวาจะเปน C, C++, Java, Perl, PHP, Python, Tcl หรอ ASP กตามท ดงนนจงไมเปนทนาแปลกใจเลยวา ท าไม MySQL จงไดรบความนยมอยางมากในปจจบน และมแนวโนมสงยงขนตอ ๆ ไปในอนาคต
MySQL จดเปนซอฟตแวรประเภท Open Source Software สามารถดาวนโหลด Source Code ตนฉบบไดจากเวบไซตของ MySQL โดยไมเสยคาใชจายใด ๆ การแกไขกสามารถท าไดตามความตองการ MySQL ยดถอ สทธบตรตาม GPL (GNU General Public License) ซงเปนขอก าหนดของซอฟตแวรประเภทนสวนใหญ โดยจะเปนการชแจงวา สงใดท าได หรอท าไมไดส าหรบการใชงานในกรณตาง ๆ
MySQL ไดรบการยอมรบและทดสอบเรองของความรวดเรวในการใชงาน โดยจะมการทดสอบและเปรยบเทยบกบผลตภณฑทางดานฐานขอมลอนอยเสมอ มการพฒนาอยางตอเนอง โดยเรมตงแตเวอรชนแรก ๆ ทยงไมคอยมความสามารถมากนก มาจนถงทกวนน MySQL ไดรบการพฒนาใหมความสามารถมากยงขน รองรบขอมลจ านวนมหาศาล สามารถใชงานหลายผใชไดพรอม ๆ กน (Multi-user) มการออกแบบใหสามารถแตกงานออก เพอชวยการท างานใหเรวยงขน รองรบขอมลจ านวนมหาศาล เพอชวยการท างานเรวยงขน (Multi-threaded) วธและการเชอมตอทดขน การก าหนดสทธและการรกษาความปลอดภยของขอมลมความรดกมนาเชอถอยงขนเครองมอหรอโปรแกรมสนบสนนทงของตวเอง
19
และของผพฒนาอน ๆ มมากยงขน นอกจากนสงหนงทส าคญคอ “MySQL ไดรบการพฒนาไปในแนวทางตามขอก าหนดมาตรฐาน SQL ดงนน เราสามารถใชค าสง SQL ในการท างาน MySQL ได” นกพฒนาทใช SQL มาตรฐานอยแลว ไมตองศกษาค าสงเพมเตม แตอาจจะตองเรยนรถงรปแบบและขอจ ากดบางอยางโดยเฉพาะ ทงนทงนน ทางทมงานผพฒนา MySQL มเปาหมายอยางชดเจนทจะพฒนาให MySQL มความสามารถสนบสนนตามขอก าหนด SQL92 มากทสด และจะพฒนาใหเปนไปตามขอก าหนด SQL99 ตอไป
2.5.1 สถาปตยกรรมของ MySQL สถาปตยกรรม หรอ โครงสรางภายในของ MySQL กคอ การออกแบบการท างานใน
ลกษณะของ Client/Server นนเอง ซงประกอบดวยสวนหลกๆ 2 สวน คอ สวนของผใหบรการ (Server) และสวนของผใชบรการ (Client) โดยในแตละสวนจะมโปรแกรมส าหรบการท างานตามหนาทของตน สวนของผใหบรการ หรอ Server จะเปนสวนทท าหนาทบรหารจดการระบบฐานขอมลในทนกหมายถงตว MySQL Server นนเอง และเปนทจดเกบขอมลทงหมด ขอมลทเกบไวนมขอมลทจ าเปนส าหรบการท างานกบระบบฐานขอมล และขอมลทเกดจากการทผใชแตละคนสรางขนมา สวนของผใชบรการ หรอ Client กคอผใชนนเอง โดยโปรแกรมส าหรบใชงานในสวนนไดแก MySQL Client, Access, Web Development Platform ตาง ๆ (เชน Java, Perl, PHP, ASP เปนตน)
หลกการท างานในลกษณะ Client/ Server มดงน 1) ทฝงของ Server จะมโปรแกรมหรอระบบส าหรบจดการฐานขอมลท างานรออย
เพอเตรยมหรอรอคอยการรองขอการใชบรการจาก Client 2) เมอมการรองขอการใชบรการเขามา Server จะท าการตรวจสอบตามวธการของตน
เชน อาจจะมการใหผใชบรการระบชอและรหสผาน และส าหรบ MySQL สามารถก าหนดไดวาจะอนญาตหรอปฏเสธ Client ใด ๆ ในระบบทจะเขาใชบรการอกดวย ซงจะไดแสดงรายละเอยดในเรองตอไป
3) ถาผานการตรวจสอบ Server กจะอนมตการใหบรการแก Client ทรองขอการใชบรการนน ๆ ตอไปและถาในกรณทไมไดรบการอนมต Server กจะสงขาวสารความผดพลาดแจงกลบไปท Client ทรองขอการใชบรการนนเครองคอมพวเตอร ทท าหนาทเปน Client หรอ Server อาจจะอยบนเครองเดยวกน หรอแยกเครองกนกได ท งนขนอยกบลกษณะการท างาน หรอการก าหนดของผบรหารระบบ ตามปกตถาเปนการท างานลกษณะWeb-based มการใชฐานขอมลขนาดไมใหญนก ตว MySQL Server และ Client มกจะมอยบนเครองเดยวกน โดยเคร องคอมพวเตอรดงกลาวจะตองมทรพยากรเพอการท างาน เชน เนอทฮารดด สก , RAM มากพอสมควร แตส าหรบการท างานจรง (Real-world
20
Application) กมกจะแยก Client และ Server ออกเปนคนละเครองกน และสามารถรองรบงานไดดมากกวา ดงนน ผบรหารระบบ หรอผก าหนดนโยบายส าหรบการท างานเครอขาย จะตองค านงถงเรองทเกยวของเหลานใหด เพอทจะท าใหระบบมการท างานรบการใหบรการ แกผใชอยางมประสทธภาพและขอมลมความปลอดภยมากทสด
2.5.2 ประเภทขอมลใน MySQL
หลกการพจารณาเลอกใชประเภทขอมล ดงน 1) ประเภทขอมลหลก ไดแก ตวเลข, ตวอกษร, วนทและเวลา, ขอมลไบนาร และ
อน ๆ ส าหรบขอมลประเภทตรรกะ MySQL ยงไมสนบสนนในเวอรชนปจจบน แตจะสนบสนนในเวอรชนถดไป
2) ในแตละประเภทขอมล จะมประเภทยอย ๆ ลงไปอก เพอใหผใชเลอกใชประเภทขอมลทเหมาะสมเพราะนอกจากจะท างานไดถกตองแลว ยงเปนการชวยประหยดเนอทการเกบขอมลอกดวย ซงตอไปเราจะไดศกษาเพมเตมวาในแตละประเภทขอมลเปนอยางไร มขอบเขตขอมลอะไรบาง ใชเนอทในการเกบขอมลเทาไร
3) การเลอกใชประเภทขอมล หากมความตองการทจะสนบสนนหรอใชมาตรฐาน เชน ODBC หรอตองการ port ขอมลไปใชในระบบอน ควรเลอกใชประเภทขอมลทสนบสนนกบมาตรฐานเทานน เพอปองกนความผดพลาดทอาจจะเกดขนตอไปในอนาคต
4) ฟลดใดทไมมการค านวณ หรอไมมแนวโนมจะเกยวของกบการค านวณเลย ควรเลอกใชขอมลประเภทตวอกษร เพราะจะประหยดเนอทในการจดเกบจรง
5) การเลอกใชประเภทของขอมลในแตละฟลด นอกจากจะดความเปนไปไดในปจจบนแลว จะตองค านงและดแนวโนมความเปนไปของขอมล หรอปรมาณของขอมลตอไปในอนาคตดวย เพอปองกนขอจ ากดของขอมลเมอมการขยายตวเพมขน
6) การเลอกใชขอมลประเภทวนทและเวลาใน MySQL จะตองเลอกใชอยางระมดระวง เนองจากมขอจ ากดและรายละเอยดทแตกตางไปจากมาตรฐาน เชน จะสามารถใชขอมลเรมตนไดทป ค.ศ. 1000 เทานน เปนตน
21
บทท 3 การออกแบบและพฒนาระบบ
3.1 แนวคดการออกแบบระบบงาน
ระบบคนหาเครอง Client ในระบบเครอขายดวย MAC Address เปนระบบทจดท าขนส าหรบผดแลระบบ ใหสามารถคนหา Client ทอยในระบบเครอขายเพอตรวจสอบต าแหนงทใชงาน ในรปแบบของเวบอนเตอรเฟส (Web interface) บนระบบปฏบตการลนกซ (Linux) เพออ านวยความสะดวก ในการคนหาเครอง Client ทเกดปญหา ตรวจสอบปญหา และตงคาอปกรณ Switch รวมถงการลดขอผดพลาดในการก าหนดชดคาค าสง และงายตอการใชงานยงขน โดยทมไอทซพพอรตและผดแลระบบเครอขายสามารถควบคมการจดการอปกรณ Switch ผานทางหนาเวบจากหนวยงานได
3.1.1 โครงสรางของระบบ
Web & Database Server
Core Switch
Distribution Switch
Access Switch
Distribution Switch
Access Switch
Access Switch
Access Switch
User
User
Client
Client
Client
Client
Client
Client
Client
รปท 3.1 แสดงโครงสรางจ าลองของระบบ
22
3.2 โครงสรางของระบบประกอบดวย 1) Web & Database Server คอ เครองคอมพวเตอรทใหบรการเวบไซตและเกบขอมลตาง ๆ
ของระบบ ดงน 1.1) เพม, ลบ, แกไข และแสดงรายงานการใชงานระบบของผใช 1.2) เพม, ลบ, แกไข และแสดงรายงานการสถานะของอปกรณ Switch 1.3) คนหา เครอง Client ในระบบเครอขายแลน ดวย Mac Address ไดวาเชอมตอ
อยกบอปกรณ Switch ตวใด, อนเตอรเฟสใดได 1.4) เกบขอมลของระบบทงหมด เชน ขอมลผใชงาน, ขอมลอปกรณ Switch, สถานะ
อปกรณ Switch, Mac Address ของเครอง Client ในระบบ เปนตน 2) Core Switch คอ จดศนยกลางของระบบเครอขายในองคกรชนด Layer 3 จะม ARP Table
ทระบวา MAC Address นเปน IP Address อะไร ซงระบบจะท าการเกบขอมลในสวนน ลงไปใน Database
3) Distribution Switch คอ จดรองรบการเชอมตอจาก Access Switch หลาย ๆ จดเขาดวยกน และตอผานไปยง Core Switch
4) Access Switch คอ เปนจดเชอมตอ Client เชน คอมพวเตอร , ปรน เตอร และเครองจกร เปนตน เขาสระบบเครอขาย สวนนจะเปนสวนทระบวา Client นน
5) User คอ ผใชงานระบบมการแบงสทธ ส าหรบผใชงานเปนสองประเภท คอ 5.1) Admin User คอ ผใชงานทมสทธ เพม, ลบ, แกไข ขอมลผใชงานและขอมล
อปกรณ Switch ได 5.2) Normal User คอ ผใชงานทมสทธ คนหา เครอง Client ในระบบเครอขายแลน
ดวย Mac Address และแสดงรายงานการสถานะของอปกรณ Switch เทานน 6) Client คอ End Device ทเชอมตอกบระบบเครอขาย เชน คอมพวเตอร, ปรนเตอร และ
เครองจกร เปนตน
23
3.3 การท างานของระบบ
MySQL Database
Core Switch
Distribution Switch
Access Switch
Client
Admin/User
Register/Edit/Delete User
Register/Edit/Delete Device
Configuration All Device
Web Server
Admin
Report (Device/Client/Log/Status)
Client Tracking
User
Report (Device/Client/Log/Status)
Client Tracking
Configuration Some Device
PHP/HTML
รปท 3.2 แสดงภาพรวมการท างานของระบบ
จากรปท 3.2 แสดงการทางานของระบบโดยรวมซงสามารถอธบายได ดงน 1) ผดแลระบบหรอผใชทวไปท าการ Login เขาสระบบโดยการใสชอผใชและรหสผานผาน
ทางหนาเวบไซต การตรวจสอบชอผใชและรหสผานจะไปเปรยบเทยบกบขอมลในฐานขอมล 2) การเขาถงขอมลของผดแลระบบและผใชทวไปสามารถแบงแยกไดเปน 2 สวน
2.1) ผดแลระบบ 2.1.1) สามารถเพม แกไข ลบ ขอมล และก าหนดสทธของผใชงานระบบ 2.1.2) สามารถเพม แกไข ลบ ขอมล ของอปกรณ Switch
24
2.1.3) แสดงสถานะและรายละเอยดของอปกรณ Switch 2.1.4) สามารถเพม แกไข ลบ ขอมล คาคอนคอนฟกเรชน Profile ส าหรบ
อปกรณ Switch 2.1.5) แกไขค าสง สงค าสง คาคอนคอนฟกเรชน ไปยงอปกรณ Switch
ไดทกตว 2.1.6) คนหาเครอง Client ในระบบเครอขายดวย MAC Address 2.1.7) สามารถตรวจสอบ Client ในระบบเครอขาย ยอนหลงได
2.2) ผใชงานทวไป 2.2.1) แสดงสถานะและรายละเอยดของอปกรณ Switch 2.2.2) สงค าสง คาคอนคอนฟกเรชน ไปยงอปกรณ Switch ไดบางตว 2.2.3) คนหาเครอง Client ในระบบเครอขายดวย MAC Address 2.2.4) สามารถตรวจสอบ Client ในระบบเครอขาย ยอนหลงได
3) ขอมลจากอปกรณ Switch ทงหมดจะถกจดเกบลง ฐานขอมล MySQL รวมทงยงตองการดงขอมลจากฐานขอมลมาแสดงรายงาน
4) หลงจากระบบคนหาเครอง Client ในระบบเครอขายดวย MAC Address ท าการดงขอมล MAC Address ของ Client ทเชอมตออยบนอปกรณ Switch แตละตวดวย Protocol SNMP แลว ผใชงานจะสามารถคนหา เครอง Client ไดวาเชอมตออยกบอนเตอรเฟสใดของอปกรณ Switch รวมถงสามารถตรวจสอบความถกตองของคาคอนคอนฟกเรชนบนอนเตอรเฟสนน ๆ ของอปกรณ Switch ซงหาก คาคอนคอนฟกเรชนบนอนเตอรเฟสนน ๆ ไมถกตอง ผใชงานกสามารถสงค าสง คาคอนคอนฟกเรชน ไปยงอปกรณ Switch เพอใหอนเตอรเฟสนน ๆ ท างานไดถกตอง
3.4 การออกแบบ Flowchart การท างานของระบบ
เพอใหเขาใจหลกการและวธการท างานของระบบคนหาเครอง Client ในระบบเครอขายดวย MAC Address ไดอยางละเอยดมากยงขนจงไดน าการใช Flow Chart อธบายกระบวนการและขน ตอนการท างานของระบบคนหาเครอง Client ในระบบเครอขายดวย MAC Address ซงจะแบงระบบออกเปนระบบยอย ดงตอไปน
25
3.4.1 การออกแบบ Flowchart ระบบ Login
เรม
รบขอมลUser, Password
ตรวจสอบUser, Password
แสดงรปแบบการใชงานของผ ดแลระบบ
ตรวจสอบสทธAdmin หรอ User
แสดงรปแบบการใชงานของผ ใชงานทวไป
จบการท างาน
Admin User
No
รปท 3.3 แสดง Flowchart ระบบ Login
จากรปท 3.3 แสดงขนตอนการทางานระบบ Login ดงตอไปน 1) การ Login เปนการทระบบท าการ Login ผานหนาเวบบราวเซอรเพอใชงาน
ระบบคนหาเครอง Client ในระบบเครอขายดวย MAC Address ระบบจะแสดงหนา Login ส าหรบใส รหสผใชงาน และ รหสผาน โดยผดแลระบบหรอผใชงานจะตองท าการกรอกขอมล รหสผใชงาน และ รหสผาน
2) ซ งระบบไดท าการก าหนดคาในสวนของรหสผ ใช งานจะตองเปนตวอกษรภาษาองกฤษ ตวเลกหรอตวใหญ หรอตวเลขเทานน โดยมขนาดความยาวไมเกน
26
45-ตวอกษร รหสผาน จะตองเปนตวอกษรภาษาองกฤษตวเลกหรอตวใหญ หรอตวเลขเทานน โดยมขนาดความยาวไมเกน 45 ตวอกษร
3) ระบบจะน า รหสผใชงาน และ รหสผาน ทผดแลระบบไดท าการกรอกขอมลไปท าการตรวจสอบกบฐานขอมล ซงหากไมพบขอมลหรอขอมลไมถกตอง ระบบจะกลบสหนา Login ใหม
4) ระบบจะท าการตรวจสอบสทธของรหสผใชงาน กบฐานขอมลวารหสผใชงานท Login เขามาไดรบสทธเปนผดแลระบบหรอผใชงานทวไป
5) เมอระบบตรวจสอบพบวา รหสผใชงาน รหสผาน และสทธของรหสผใชงาน ถกตองจะเขาสหนาการระบบคนหาเครอง Client ในระบบเครอขายดวย MAC Address ใชงานโดยไดรบสทธทตางกนระหวาง ผดแลระบบและผใชงานทวไป
3.4.2 การออกแบบ Flowchart ระบบจดการอปกรณ Switch
เรม
เพมขอมลอปกรณ Switch
ตรวจสอบขอมล
จบการท างาน
ขอมลไมครบขอมลซ า
แสดงขอมลและบนทกขอมล
ขอมลครบถวน
รปท 3.4 แสดง Flowchart ระบบจดการอปกรณ Switch
27
จากรปท 3.4 แสดงขนตอนการท างานระบบจดการอปกรณ Switch ดงตอไปน เรมตนการท างาน ผดแลระบบตองท าการกรอกขอมลของอปกรณ Switch เพอจดการ
เกบขอมลลงฐานขอมล โดยขอมลทผดแลระบบจะตองกรอกนนประกอบไปดวย SNMP Version, SNMP Community String, Group Name, Device Name, IP Address และ SNMP Port เปนตน เมอผดแลระบบท าการกรอกขอมลดงกลาวครบถวนแลว จากนนท าการ Save เพอบนทกขอมลลงระบบฐานขอมล
3.4.3 การออกแบบ Flowchart ระบบคนหา Client
เรม
กรอก MAC Address ทตองการคนหา
ตรวจสอบขอมล
จบการท างาน
ไมพบขอมล
พบขอมล
แสดงขอมล
รปท 3.5 แสดง Flowchart ระบบคนหา Client
จากรปท 3.5 แสดงขนตอนการท างานระบบคนหา Client ดงตอไปน เรมตนการท างาน ผดแลระบบหรอผใชงานทวไปกรอกขอมล MAC Address ทตองการ
คนหาเขาไปในระบบ จากนนระบบจะท าการตรวจสอบขอมล หากไมพบขอมลตองท าการกรอกขอมลใหม หากพบขอมลระบบจะแสดงรายละเอยดของ Client วาเชอมตอกบอปกรณ Switch ทอนเตอรเฟสใด และอนเตอรเฟสนนมคาคอนคอนฟกเรชนอยางไร
28
3.4.4 การออกแบบ Flowchart ระบบคอนฟกเรชนอปกรณ Switch
เรม
จบการท างาน
ยนยน
ยกเล ก
ใส Vlan และตรวจสอบคาคอนฟกกเรช น
เลอกอปกรณ Switch
เลอกคอนฟก เรชน Profile
เลอกอนเตอรเฟสของอปกรณ Switch
ยนยนการสงคาคอนฟกกเรชน
รปท 3.6 แสดง Flowchart ระบบคอนฟกเรชนอปกรณ Switch
จากรปท 3.6 แสดงขนตอนการท างานระบบคนหา Client ดงตอไปน เรมตนการท างาน ผดแลระบบท าการเลอกอปกรณ Switch, อนเตอรเฟสของอปกรณ
Switch และ คอนคอนฟกเรชน Profile ใส Vlan ทตองการ จากนนระบบจะแสดงขอมลใหตรวจสอบกอนทจะท าการ ยนยน หรอ ยกเลก
29
3.5 การออกแบบฐานขอมล จากการวเคราะหขนตอนการท างานและความสมพนธของขอมล ท าใหสามารถ ออกแบบ
ระบบฐานขอมลเชงสมพนธของระบบงาน ซงจะท าใหไดตารางของระบบฐานขอมลของโปรแกรม โดยสามารถอธบายถงรายละเอยดตาง ๆ ของขอมล ดงแสดงตามตารางท 3.1 - 3.7
ส าหรบการน าเสนอรายละเอยดของแตละตาราง จะน าเสนอในรปแบบของตาราง ซงมหวขอแตละสวนดงน
1) ชอขอมล หมายถง ชอของ Column ในตาราง 2) PK หมายถง Primary Key ของตาราง 3) FK หมายถง Foreign Key ของตาราง 4) ชนด คอ Data Type ของ Column 5) ความหมาย คอ ความหมายของ Column
ตารางท 3.1 แสดงรายละเอยดของตาราง NM_DEVICE
ชอขอมล ชนด Key ความหมาย
id int (11) PK รหสล าดบท group varchar (50) Group ของอปกรณ
name varchar (255 ) ชอของอปกรณ
ip varchar (20) IP ของอปกรณ port int (10) Port ของอปกรณ
location varchar (50) Location ของอปกรณ
online smallint (1) สถานะของอปกรณ 1 Online 0 Offline
snmp_version int (1) เวอรชนของ SNMP
snmp_community varchar (50) SNMP Community String snmp_port int (10) SNMP Port
serial_number varchar (50) Serial Number ของอปกรณ
status smallint (1) คาทตองการจากอปกรณ 3 ตองการ IP Address 1 ตองการ MAC Address และ Interface 0 ไมตองการรบคาใด ๆ
30
ตารางท 3.2 แสดงรายละเอยดของตาราง NM_LOGS
ชอขอมล ชนด Key ความหมาย id int (11) PK รหสล าดบท
vlan_id int (11) รหสล าดบทของ VLAN
vlan_no int (11) รหส VLAN ip varchar (255) IP Address
mac_id int (11) FK รหสล าดบทของ MAC Address mac_address varchar (255) MAC Address
device_name varchar (255) ชอของอปกรณ
location varchar (255) Location ของอปกรณ port_no int (11) Interface Index ของอปกรณ
port_name varchar (255) Interface Name ของอปกรณ
updated_dt datetime วนท Update ขอมล
ตารางท 3.3 แสดงรายละเอยดของตาราง NM_VLAN_MAC ชอขอมล ชนด Key ความหมาย
vlan_no int (11) PK รหส VLAN
mac_id int (11) PK รหสล าดบทของ MAC Address device_id int (11) FK รหสอปกรณ
mac_address varchar (255) MAC Address mac_str varchar (255) คา MIB ของ MAC Address
mapping varchar (255) คา MIB ทสนใจ
port_no int (11) Interface Index ของอปกรณ port_name varchar (255) Interface Name ของอปกรณ
port_str varchar (255) คา MIB ของ Interface
updated_dt datetime วนท Update ขอมล
31
ตารางท 3.4 แสดงรายละเอยดของตาราง USER
ชอขอมล ชนด Key ความหมาย id int (11) PK รหสล าดบท
username varchar (45) PK ชอ Login เขาใชงาน
password varchar (45) รหสผานเขาใชงาน email varchar (255) PK อเมล
user_level int (1) สถานะสทธของผใชงาน 1 Admin User 0 Normal User
status smallint (6) สถานะของผใชงาน 1 Enable 0 Disable
created_by varchar (60) ชอผสรางผใชงาน
created_date datetime วนทสรางผใชงาน updated_by varchar (60) ชอผแกไขขอมลผใชงาน
updated_date datetime วนทแกไขขอมลผใชงาน
ตารางท 3.5 แสดงรายละเอยดของตาราง NM_MAC_ADDRESS
ชอขอมล ชนด Key ความหมาย id int (11) PK รหสล าดบท
ip varchar (255) IP Address mac_address varchar (255) MAC Address
updated_dt datetime วนท Update ขอมล
ตารางท 3.6 แสดงรายละเอยดของตาราง NM_VLAN
ชอขอมล ชนด Key ความหมาย id int (11) PK รหสล าดบท
device_id int (11) FK รหสอปกรณ
vlan_no int (11)
รหส VLAN vlan_str varchar (255) คา MIB ของ VLAN
32
ตารางท 3.7 แสดงรายละเอยดของตาราง USER_PROFILE
ชอขอมล ชนด Key ความหมาย user_id int (11) PK รหสล าดบท
title varchar (15) ค าน าหนาชอ
firstname varchar (100) ชอ lastname varchar (100) สกล
nickname varchar (50) ชอเลน address1 varchar (255) ทอยบรรทดท 1
address2 varchar (255) ทอยบรรทดท 2
address3 varchar (255) ทอยบรรทดท 3 district varchar (150) ต าบล
amphur varchar (150) อ าเภอ
province varchar (150) จงหวด zipcode varchar (10) รหสไปรษณย
phone varchar (20) เบอรโทรศพท mobile varchar (20) เบอรโทรศพทมอถอ
email varchar (100) อเมล
avata varchar (255) รป Profile
33
บทท 4 การทดลองและผลการทดลอง
เมอท าการวเคราะหและออกแบบระบบเรยบรอยแลว จงมาถงขนตอนการพฒนาโดยอาศย
ทฤษฎและการออกแบบทไดกลาวไวในบทขางตน รวมถงการทดสอบฟงกชนการทางานของระบบ โดยแบงเปนสวน ๆ ได ดงน 4.1 เครองมอทใชในการทดลองและสภาพแวดลอม
ขนตอนในการพฒนาระบบ ไดพฒนาบนสภาวะแวดลอมของระบบงานจรง และในขนตอนการทดลองระบบจงไดท าการทดสอบบนสภาวะแวดลอมของระบบงานจรง โดยมองคประกอบในการทดสอบระบบดงน
1) Web Server ตดตงอยบน VMware EXSi โดยใชองคประกอบ LAMP (Linux, Apache, MySQL, PHP) มรายละเอยดดงน
1.1) หนวยประมวลผล (CPU) แบบเวอรชวลไลเซชน 8CPUs, หนวยความจ าหลก (RAM: Random Access Memory) แบบเวอรชวลไลเซชน 16GB, หนวยความจ า ส ารอง (Hard Disk) 200GB และ Network Adapter 10/100/1000 Mbps
1.2) ระบบปฏบตการ Linux (Ubuntu 18.04 LTS) 1.3) ตดตงแพคเกจ Apache Version 2.4.29 (Ubuntu), PHP Version 7.2, MySQL
Version 5.7.25 และ phpMyAdmin Version 4.6.6deb5 2) โปรแกรมทไดท าการออกแบบและพฒนาโดยใชโปรแกรม Visual Studio Code 3) ภาษาทใชในการพฒนาคอ PHP 4) ฐานขอมลของระบบคอ MySQL 5) Internet Explorer Google Chrome และ Firefox เปน Web Browser ทใชทดสอบ
การท างานของระบบ 6) อปกรณ Switch Layer 3 รน Cisco WS-C4500X-32 7) อปกรณ Switch Layer 2 รนCisco WS-C2960X-24TD-L และ Cisco WS-C2960+48TC-L
4.2 รายละเอยดของการพฒนา
การท างานของระบบตนแบบ แบงเปน 2 สวนหลก ซงประกอบไปดวย 1) ผดแลระบบ
1.1) สามารถเพม แกไข ลบ ขอมล และก าหนดสทธของผใชงานระบบ 1.2) สามารถเพม แกไข ลบ ขอมล ของอปกรณ Switch
34
1.3) แสดงสถานะและรายละเอยดของอปกรณ Switch 1.4) สงค าสง แกค าสง คาคอนคอนฟกเรชน ไปยงอปกรณ Switch ไดทกตว 1.5) คนหาเครอง Client ในระบบเครอขายดวย MAC Address 1.6) สามารถตรวจสอบ Client ในระบบเครอขาย ยอนหลงได
2) ผใชงานทวไป 2.1) แสดงสถานะและรายละเอยดของอปกรณ Switch 2.2) สงค าสง คาคอนฟกเรชน ไปยงอปกรณ Switch ไดบางตว 2.3) คนหาเครอง Client ในระบบเครอขายดวย MAC Address 2.4) สามารถตรวจสอบ Client ในระบบเครอขาย ยอนหลงได
4.3 ผลด าเนนงานและการทดลองระบบ
4.3.1 ลอกอนเขาสระบบ
รปท 4.1 แสดงหนาจอลอกอนเขาสระบบ
จากรปท 4.1 ท าการปอนขอมล Username/Password เพอเขาใชงาน ถาหากปอนขอมลไมถกตอง ระบบจะแจงขอมล “Incorrect username or password.” เมอ Login เขาใชงานส าเรจแลวระบบจะแสดงขอมลดงรปท 4.2 ซงเปนการแสดงหนาหลกของระบบ
35
รปท 4.2 แสดงหนาจอ Dashboard เมอ Login เขาสระบบส าเรจ
4.3.2 คนหาเครอง Client ในระบบ ท าการเลอกเมน “Search” เพอจะท าการคนหาเครอง Client ในระบบ จะปรากฏ
หนาจอดงรปท 4.3
รปท 4.3 แสดงหนาจอ คนหาเครอง Client ในระบบ
เมอท าการปอน “MAC Address” ของ Client ทตองการคนหา และกดปม “Search Data” จะปรากฏผลลพธการคนหาเครอง Client ทตองการ ดงรปท 4.4
36
รปท 4.4 แสดงผลลพธการคนหาเครอง Client ในระบบ
เมอกดปม “View” จาก Client ทคนหา จะปรากฏผลลพธแสดง History ของ Client ทตองการ ดงรปท 4.5
รปท 4.5 แสดง History ของเครอง Client ทตองการ
37
4.3.3 การบรหารจดการอปกรณ Switch ท าการเลอกเมน “Device” เพอจะท าการบรหารจดการอปกรณ Switch จะปรากฏ
หนาจอดงรปท 4.6
รปท 4.6 แสดงหนาจอ บรหารจดการอปกรณ Switch
ท าการเลอกเมน “+” เพอจะท าการเพมอปกรณ Switch จะปรากฏหนาจอดงรปท 4.7 และเมอใสขอมลครบใหท าการเลอกเมน “Create” เมอเพมอปกรณ Switch ส าเรจ ระบบจะปรากฏหนาจอของรายละเอยดของ อปกรณ Switch ดงรป 4.8
รปท 4.7 แสดงหนาจอการเพมอปกรณ Switch
38
รปท 4.8 แสดงหนาจอรายละเอยดของอปกรณ Switch
4.3.4 การบรหารจดการอนเตอรเฟสบนอปกรณ Switch ท าการเลอกเมน “view” จะเปนการแสดงคาคอนฟกเรชนของอนเตอรเฟสนน ๆ
บน อปกรณ Switch จะปรากฏหนาจอดงรปท 4.9
รปท 4.9 หนาจอแสดงคาคอนฟกเรชนของอนเตอรเฟสบนอปกรณ Switch
39
ท าการเลอกเมน “config” จะเปนการแสดงหนาจอ ส าหรบสงคาคอนฟกเรชน ไปยงอนเตอรเฟสทตองการ บน อปกรณ Switch จะปรากฏหนาจอดงรปท 4.10
รปท 4.10 แสดงหนาจอ ส าหรบสงคาคอนฟกเรชน
ท าการใส Vlan ทตองการตงคาในชอง “VLAN No” จากนนเลอกเมน “Config Port to VLAN” จะแสดงคาคอนฟกเรชน แบบ Switch Port Access VLAN ใหเหนเพอตรวจสอบความถกตอง จากนนเมอเลอกเมน “Send Command” จะเปนการสงคาคอนฟกเรชนไปยงอนเตอรเฟสทตองการ บนอปกรณ Switch ปรากฏหนาจอดงรปท 4.11
รปท 4.11 แสดงหนาจอเมอสงคาคอนฟกเรชนแบบ Switch Port Access VLAN
40
เชนเดยวกนเมอท าการใส Vlan ทตองการตงคาในชอง “VLAN No” จากนนเลอกเมน “Config Port to Dot1X” จะแสดงคาคอนฟกเรชน แบบ Switch Port Dot1X Authentication ใหเหนเพอตรวจสอบความถกตอง จากนนเมอเลอกเมน “Send Command” จะเปนการสงคาคอนฟกเรชนไปยงอนเตอรเฟสทตองการ บนอปกรณ Switch ปรากฏหนาจอดงรปท 4.12
รปท 4.12 แสดงหนาจอเมอสงคาคอนฟกเรชนแบบ Switch Port Dot1X Authentication
ท าการเลอกเมน “Save Config” จะเปนการ Save คาคอนฟกเรชน ของอปกรณ Switch จะปรากฏหนาจอดงรปท 4.13
รปท 4.13 แสดงหนาจอเมอสงคา Save คอนฟกเรชน
41
4.3.5 การบรหารจดการผใชงานระบบ ท าการเลอกเมน “System” และ “User Management” จะเปนการเขาสหนาจอหลก
ส าหรบบรหารจดการผใชงานระบบ ดงรปท 4.14
รปท 4.14 แสดงหนาจอหลกส าหรบบรหารจดการผใชงานระบบ
ท าการเลอกเมน “+” เพอจะท าการเพมผใชงาน จะปรากฏหนาจอดงรปท 4.15 และเมอใสขอมลครบใหท าการเลอกเมน “Create” เมอท าการเพมผใชงานส าเรจ ระบบจะปรากฏหนาจอของรายละเอยดของผใชงาน ดงรป 4.16
รปท 4.15 แสดงหนาจอเพมผใชงาน
42
รปท 4.16 แสดงหนาจอรายละเอยดผใชงาน
ท าการเลอกเมน “ ” เพอจะท าการ Update รายละเอยดของผใชงาน เมอท าการ Update ขอมลครบใหท าการเลอกเมน “Update” ดงรป 4.17 ระบบจะท าการ Update ขอมลใหอตโนมต
รปท 4.17 แสดงหนาจอ Update รายละเอยดผใชงาน
43
บทท 5 สรปผลการด าเนนงาน
5.1 ผลการด าเนนโครงการ
โครงการนเปนการพฒนาระบบคนหาเครอง Client ในระบบเครอขายดวย MAC Address เปนเครองมอชวยในการคนหา ตดตาม เครอง Client ทอยในระบบเครอขายของบรษทฯ เพอชวยตรวจสอบปญหาการใชงานระบบเครอขาย ในการพฒนาโครงงานครงนไดมการประยกตใช Protocol SNMP และค าสงตาง ๆ ของ Cisco เขามาชวยดงขอมลจาก อปกรณ Switch มาเกบลงในฐานขอมล เมอน าระบบไปทดลองใชงานสามารถชวยอ านวยความสะดวกแกผดแลระบบเครอขายของบรษทฯ สามารถตรวจสอบ วเคราะห และรถงสาเหตของปญหาการใชงานระบบเครอขายของ Client ไดอยางรวดเรว ลดขนตอน ลดเวลาในการตรวจสอบปญหา ท าใหเครอง Client สามารถกลบมาใชงานไดปกต สารนพนธนจงไดส าเรจตามวตถประสงคทไดวางไว 5.2 ปญหาและอปสรรค
เนองจากปรมาณ MAC Address Table ในระบบเครอขายของ บรษทฯ มเยอะมากท าใหเวลาดงขอมลใชจะใชเวลานาน และใชทรพยากรของ Server จ านวนมาก 5.3 แนวทางการพฒนาในอนาคต
1) น าฐานขอมลไปใชในการพฒนาระบบอน ๆ ขององคกร เพอใชยนยนตวตนของ Client ทเปน Platform อน ๆ นอกเหนอจาก Microsoft Windows Platform
2) พฒนาระบบใหมความปลอดภยมากขน โดยไมเกบ Username และ Password ของอปกรณ Switch และเปลยนมาใช Public Key Authentication แทน
3) พฒนาสวนของผใชงานใหเปน Single Sign On สามารถ Login เขาสระบบไดดวย Username และ Password จาก Active Directory
44
เอกสารอางอง [1] IEEE. OUI Public Listing. [Online]. Available: http://standards.ieee.org/develop/ regauth/oui/oui.txt. [2] วรนทร เมฆประดษฐสน, คมภรออกแบบตดตงอปกรณเครอขาย Cisco, กรงเทพฯ: ซเอดยเคชน, 2550. [3] กตตศกด เจรญโภคานนท, คมอเรยนเขยนเวบไซตอคอมเมรชดวย PHP5, พมพครงท 2, กรงเทพฯ: บรษทซคเซลมเดยจ ากด, 2550. [4] CISCO. Using SNMP to Find a Port Number from a MAC Address on a Catalyst Switch. [Online]. Available: https://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/44800-mactoport44800.html [5] E. Angert. How to Install a LAMP Stack on Ubuntu 18.04. [Online]. Available: https://www.linode.com/docs/web-servers/lamp/install-lamp-stack-on-ubuntu-18-04/.
46
การตดตง Ubuntu 18.04 และ LAMP (Linux, Apache, MySQL, PHP) 1. ท าการ Download Ubuntu Server จาก https://www.ubuntu.com/download/server
รปท ก.1 Download Ubuntu Server 2. Login เขาสระบบ VMware vSphere Client
รปท ก.2 Login เขาสระบบ VMware vSphere Client
47
3. ท าการสราง Visual Machine โดยมขนตอนดงน ขนตอนท 1 ไปท File -> New -> Visual Machine
รปท ก.3 การสราง Visual Machine (1)
ขนตอนท 2 คลก Next
รปท ก.4 การสราง Visual Machine (2)
48
ขนตอนท 3 ตงชอ Visual Machine และคลก Next
รปท ก.5 การสราง Visual Machine (3)
ขนตอนท 4 เลอก Data Store และคลก Next
รปท ก.6 การสราง Visual Machine (4)
49
ขนตอนท 5 เลอก Guest Operating System และคลก Next
รปท ก.7 การสราง Visual Machine (5)
ขนตอนท 6 เลอก Network Adapter และคลก Next
รปท ก.8 การสราง Visual Machine (6)
50
ขนตอนท 7 เลอกขนาด Virtual Disk, Thin Provision และคลก Next
รปท ก.9 การสราง Visual Machine (7)
ขนตอนท 8 เลอก Edit virtual machine… และคลก Continue
รปท ก.10 การสราง Visual Machine (8)
51
ขนตอนท 9 เลอก ตงคา Memory และ CPUs และคลก Finish
รปท ก.11 การสราง Visual Machine (9) 4. ท าการตดตง Ubuntu 18.04 LTS โดยมขนตอนดงน
ขนตอนท 1 คลกขวาท Visual Machine และคลก Open Console
รปท ก.12 การตดตง Ubuntu 18.04 LTS (1)
52
ขนตอนท 2 คลก CD/DVD drive 1 และคลก Connect to ISO image on local disk
รปท ก.13 การตดตง Ubuntu 18.04 LTS (2)
ขนตอนท 3 เลอก ISO ไฟลทท าการ Download ในขนตอนแรก และคลก Open
รปท ก.14 การตดตง Ubuntu 18.04 LTS (3)
53
ขนตอนท 4 ไปท VM -> Guest และคลก Send Ctrl+Alt+del
รปท ก.15 การตดตง Ubuntu 18.04 LTS (4)
ขนตอนท 5 เลอก English และ Enter
รปท ก.16 การตดตง Ubuntu 18.04 LTS (5)
54
ขนตอนท 6 เลอก Done และ Enter
รปท ก.17 การตดตง Ubuntu 18.04 LTS (6)
ขนตอนท 7 เลอก Install Ubuntu และ Enter
รปท ก.18 การตดตง Ubuntu 18.04 LTS (7)
55
ขนตอนท 8 เลอก ens160 -> Edit IPv4 และ Enter
รปท ก.19 การตดตง Ubuntu 18.04 LTS (8)
ขนตอนท 9 เลอก Manual และ Enter
รปท ก.20 การตดตง Ubuntu 18.04 LTS (9)
56
ขนตอนท 10 ท าการตงคา IP และ Save จากนนเลอก Done จนถง Filesystem setup
รปท ก.21 การตดตง Ubuntu 18.04 LTS (10)
ขนตอนท 11 ท าการเลอก Use An Entire Disk And Set Up LVM
รปท ก.22 การตดตง Ubuntu 18.04 LTS (11)
57
ขนตอนท 12 ท าการตงคา LVM และเลอก Done
รปท ก.23 การตดตง Ubuntu 18.04 LTS (12)
ขนตอนท 13 ท าการตงคา Username, Password, Server Name และเลอก Done
รปท ก.24 การตดตง Ubuntu 18.04 LTS (13)
58
ขนตอนท 14 เลอก Done
รปท ก.25 การตดตง Ubuntu 18.04 LTS (14)
ขนตอนท 15 เลอก Reboot Now เปนการจบขนตอน Installation Ubuntu 18.04 LTS
รปท ก.26 การตดตง Ubuntu 18.04 LTS (15)
59
5. ท าการตดตง LAMP (Linux, Apache, MySQL, PHP) บน Ubuntu Server โดยมขนตอนดงน ขนตอนท 1 ใช Program Putty SSH ไปท Ubuntu Server และท าการ Update software
packages และ ท าการตดตง Apache โดยใชค าสง $ sudo apt update $ sudo apt install apache2
รปท ก.27 การตดตง Apache
ขนตอนท 2 ตรวจสอบ Status ของ Service Apache โดยใชค าสง $ sudo systemctl status apache2
รปท ก.28 แสดง Status ของ Apache
60
ขนตอนท 3 ท าการตดตง MariaDB (MySQL) โดยใชค าสง $ sudo apt install mariadb-server mariadb-client
รปท ก.29 การตดตง MariaDB
ขนตอนท 4 ตรวจสอบ Status ของ MySQL โดยใชค าสง $ sudo systemctl status mysql
รปท ก.30 แสดง Status ของ MySQL
61
ขนตอนท 5 ตงคาความปลอยภยใหกบ MySQL โดยใชค าสง $ sudo mysql_secure_installation จากนนใส yes/y ส าหรบค าถามเพอความปลอดภย ดงน Set root password? [Y/n]: y Remove anonymous users? (Press y|Y for Yes, any other key for No) : y Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
รปท ก.31 แสดงการตงคาความปลอยภยใหกบ MySQL
62
ขนตอนท 6 ท าการตดตง PHP โดยใชค าสง $ sudo apt install php php-common php-mysql php-gd php-cli
รปท ก.32 การตดตง PHP
ขนตอนท 7 ท าการทดสอบ PHP โดยใชค าสง $ echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php จากนนเปด Web Browser พมพ http://SERVER_IP/info.php
รปท ก.33 การทดสอบ PHP
63
ขนตอนท 8 ท าการตดตง phpMyAdmin โดยใชค าสง $ sudo apt install phpmyadmin
รปท ก.34 การตดตง phpMyAdmin
ขนตอนท 9 ท าการตงคา phpMyAdmin โดยเลอก apache2 ดงรปท ก.35 เลอก Ok ดงรปท ก.36 และท าการใส Password ของ MySQL ดงรปท ก.37
รปท ก.35 การตงคา phpMyAdmin (1)
64
รปท ก.36 การตงคา phpMyAdmin (2)
รปท ก.37 การตงคา phpMyAdmin (3) ขนตอนท 10 ตงคา Username และ Password ใหกบ phpMyAdmin โดยท าการ Restart
Service ของ Apache โดยใชค าสง $ sudo systemctl restart apache2 จากนนท าการตงคา Username และ Password ใหกบ phpMyAdmin โดยใชค าสง $ sudo mysql -u root –p จากนนใหท าการใส Password ของ MySQL และใชค าสงเพอตงคา Username และ Password
ดงน MariaDB [(none)]> CREATE USER 'username'@'localhost' IDENTIFIED BY 'password'; MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' WITH
GRANT OPTION; MariaDB [(none)]> FLUSH PRIVILEGES;