ระบบค้นหาเครื่อง Client...

75
ระบบค้นหาเครื่อง Client ในระบบเครือข่ายด้วย MAC Address กรณีศึกษา บริษัท แมกเนคอมพ์ พรีซีชั่น เทคโนโลยี จากัด (มหาชน) Network Client Tracking System Case Study Magnecomp Precision Technology PCL. คงวุฒิ สังข์พันธ์ Khongwut Sangkaphan สารนิพนธ์นี้เป็นส่วนหนึ่งของการศึกษา หลักสูตรวิทยาศาสตรมหาบัณฑิต สาขาวิศวกรรมเครือข่าย คณะวิทยาการและเทคโนโลยีสารสนเทศ มหาวิทยาลัยเทคโนโลยีมหานคร ปีการศึกษา 2561

Transcript of ระบบค้นหาเครื่อง Client...

ระบบคนหาเครอง 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/.

45

ภาคผนวก ก การตดตง Ubuntu 18.04 และ LAMP (Linux, Apache, MySQL, PHP)

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;

65

รปท ก.38 การตงคา Username และ Password ใหกบ phpMyAdmin

ขนตอนท 11 เขาใชงาน phpMyAdmin โดยวธ เปด Web Browser พมพ http://SERVER_IP/phpmyadmin

รปท ก.39 การเขาใชงาน phpMyAdmin