12).pdf · 39 ภาพที่ 3-1...

Preview:

Citation preview

บทท 3

วธการด าเนนงาน

ในการศกษาและประยกตใชระบบ VOIP System by Asterisk Server on Fedora Core Linux ทางผศกษามขนตอนในการด าเนนงานโดยมรายละเอยดและขนตอนการท างานตางๆทส าคญ ดงตอไปน

3.1 ระบบเครอขายโทรศพทแบบเดม ระบบเครอขายภายในองคกรปจจบนประกอบไปดวยหลายระบบแตระบบหลกทมความจ าเปนอยางยงส าหรบองคกรคอ ระบบอนเทอรเนต ( Internet) ระบบแฟกซ และระบบทใชงานกนอยางเปนประจ าในการตดตอสอสารทงภายในองคกรและภายนอกองคกร ใชตดตอสอสารกนกบลกคาและบคคลทวไป มคกบองคกรมาแตดงเดมแลวคอ ระบบโทรศพทแบบเดม ระบบโทรศพทแบบเดม หรอ PSTN ยอมาจาก Public Switch Telephone Network หรอ เครอขายโทรศพทพนฐาน หรอเรยกงายๆวาเครอขายโทรศพทบาน (เชน เครอขายของ TOT, TA, หรอ TT&T) เปนเครอขายทเชอมตอกบเครอขายตางๆ ทงในพนทเดยวกน ทางไกลตางจงหวด ทางไกลตางประเทศ และเครอขายโทรศพทเคลอนท ผใหบรการโทรศพทเคลอนท จ าเปนทจะตองเชอมตอกบ PSTN เพอจะไดตดตอกบ โครงขายโทรศพทพนฐาน และ เครอขายโทรศพทอนๆไดระบบเครอขายโทรศพทสาธารณะ ( PSTN) นจะใชสายไฟทองแดงเปนสอในการล าเลยงสญญาณเสยงขอมลทเปนสญญาณแบบ Analog ของเสยงมนษย แตละสถานฐานจะถกเชอมตอไปยงศนยกลางการใหบรการการสวตชงเคลอนท ( MSC : Mobile Services Switching Centre) ซงโดยทวไปจะใชเสนใยแกวน าแสงหรออาจใชระบบไมโครเวฟเชอมตอสญญาณ สวนระบบชมสายโทรศพทดจตอลจะใชซอฟตแวรเปนตวจดการในการใหบรการทงหมดแกผใชบรการ ซงเปนระบบทมมาแตดงเดมและใชกนมาเปนเวลานานแลว ยงมการสอสารแบบอนอก เชน การสอสารดวยระบบโทรศพท การสอสารดวยแฟกซ และอนๆ ท าใหองคกรเกดคาใชจายเปนจ านวนมาก

39

ภาพท 3-1 แสดงระบบเครอขายโทรศพทพนฐาน PSTN 3.2 ระบบโทรศพทระบบ VoIP ในปจจบนเมอตองตดตอสอสารกนโดยใชโทรศพทในการตดตอธรกจ ผใชมกจะคดอยในใจเสมอวาจะเลอกใชระบบโทรศพทระบบไหนตดตอกนดระหวางระบบโทรศพทแบบพนฐานธรรมดาผานตสาขาในส านกงาน กบใชระบบโทรศพทเคลอนท ซงแตละระบบกมขอไดเปรยบทแตกตางกนในแงของคาใชจายและความคลองตวของการใชงาน ซงคงปฏเสธไมไดวายงคงตองใชงานทงสองระบบควบคกนไป ระบบตสาขาทใชงานกบโทรศพทพนฐานในส านกงานไดถกพฒนาตอไปโดยใชเทคโนโลยของ Voice Over IP จากเดมทมหวโทรศพทแบบเดมตอเขากบคสายโทรศพทไปยงตสาขา กกลายเปนหวโทรศพทรนใหมทเรยกวา IP Phone ตอเขากบระบบ LAN โดยแปลงสญญาณเสยงทใชพดคย เปนขอมลดจตอลสงผานระบบ LAN เหมอนขอมลอน ๆ ทวไปทรบสงกนระหวางเครองคอมพวเตอรบน LAN มเซรพเวอรท าหนาทควบคมการโทร (Call Manager)โดยอาศย IP Protocol เปนตวน าพาสญญาณเสยงไปยงปลายทาง

VoIP-Voice Over IP หรอทเรยกกนวา “VoIP Gateway” หมายถง การสงเสยงบนเครอขายไอพ เปนระบบทแปลงสญญาณเสยงในรปของสญญาณไฟฟามาเปลยนเปนสญญาณดจตอล คอ น าขอมลเสยงมาบบอดและบรรจลงเปนแพกเกต ไอพ ( IP) แลวสงไปโดยมเราเตอร (Router) ทเปนตวรบสญญาณแพกเกต และแกปญหาบางอยางให เชน การบบอดสญญาณเสยง ใหมขนาดเลกลง การแกปญหาเมอมบางแพกเกตสญหาย หรอไดมาลาชา ( delay) การสอสารผานทางเครอขายไอพตองมเราเตอร (Router) ทท าหนาทพเศษเพอประกนคณภาพชองสญญาณไอพน เพอใหขอมลไปถง ปลายทางหรอกลบมาไดอยางถกตอง และอาจมการใหสทธพเศษกอนแพกเกตไอพอน (Quality of Service : QoS) เพอการใหบรการทท าใหเสยงมคณภาพ

40

ภาพท 3-2 ระบบ Voice Over IP (VoIP)

นอกจากนน Voice over IP (VoIP) ยงเปนการสงขอมลเสยงแบบ 2 ทางบนระบบเครอขายแบบ packet-switched IP network. ซงขอมลนจะถกสงผานเครอขายอนเทอรเนตสาธารณะ เพอสอสารระหวาง VoIP ดวยกน โดยทยงคงความเปนสวนตวไวได ส าหรบการใชงานเทคโนโลย VoIP นนทกๆ องคกรสามารถน าเทคโนโลยนมาประยกตใชงานได แตส าหรบกลมเปาหมายทตรงและนาจะไดรบประโยชนจากการน าเทคโนโลย VoIP มาประยกตใชงานมากทสด ไดแก กลมธรกจขนาดยอม หรอ SME (Small/Medium Enterprise) รวมถงกลม ISP (Internet Service Provider) ตางๆ ส าหรบกลมธรกจ SME อาจจะตองเปนกลมทมระบบเครอขายขอมลของตนเองอยแลว ไมวาจะเปนเครอขาย Leased Line, Frame Relay, ISDN หรอแมกระทงเครอขาย E1/T1 กตาม รวมถงมระบบตสาขาโทรศพทในการใชงานดวย การน าเทคโนโลย VoIP มาใชงานนนจะท าใหองคกรลดคาใชจายในการใชงานการสอสารสญญาณเสยงไปไดอยางมาก และเนองดวยในปจจบนการขยายตวของระบบเครอขายสญญาณขอมล หรอ Data Network มอตราการเตบโตทรวดเรวกวาการขยายตวของเครอขายสญญาณเสยงคอนขางมาก จงท าใหมการน าเทคโนโลยทสามารถน าสญญาณเสยงเหลานนมารวมอยบนระบบเครอขายของสญญาณขอมลและมการรบ-สงสญญาณทงคไดในเวลาเดยวกน เพอเปนการสะดวกและประหยดคาใชจาย ไมวาจะเปนคาโทรศพททางไกลตางจงหวด หรอรวมถงคาโทรศพททางไกลตางประเทศดวยถาหากองคกรนนมสาขาอยใน ตางประเทศดวย ส าหรบกลมธรกจ ISP นนสามารถทจะน าเทคโนโลย VoIP นมาประยกตใชงานเพอเปนการเพมโอกาสในธรกจของตนเองมากยงขน โดยทาง ISP ตางๆ นนสามารถใหบรการ VoIP เพอเปนบรการเสรมเพมเตมขนมาจากการใหบรการระบบเครอขาย Internet แบบปกต

41

ธรรมดา หรอทเราเรยกวา Value Added Services ซงถอวาเปนการสรางความแตกตางและเพมทางเลอกในการใหบรการกบกลมลกคาดวย 3.3 ระบบ VoIP โดยใช Asterisk ผศกษาจงไดน าเสนอระบบการตดตอสอสารทางเสยงบนอนเตอรเนต เพอน ามาใชแทนระบบโทรศพทแบบเดม โดยไดศกษาการตดตงและประยกตใชงานระบบ VoIP ซงเปนระบบการตดตอสอสารทางเสยงบนอนเทอรเนต โดยผศกษาไดเลอกโปรแกรม Asterisk Server เปนเครองเซอรฟเวอรทท าหนาทแทนต PBX ของระบบโทรศพทแบบเดม ซงเรยกวาต IP-PBX หรอ IP-PBX Server และใชโปรแกรม Phonerlite Soft phone ซงเปนโปรแกรม Soft Phone ตดตงบนเครองไคลแอนตแทนเครองโทรศพทแบบเดม โดยผศกษาคาดวาการประยกตใชระบบ VoIP ในโครงงานนจะเปนตนแบบใหสามารถน าไปใชกบส านกงานธรกจและองคกรทวไปได และท าใหองคกรสามารถลดคาใชจายในการตดตอสอสารภายในองคกรและระหวางองคกรได เพราะเปนการใชงานบนเครอขายขององคกรทมการตดตงไปกอนแลว นอกจากนนในการใชโทรศพท VoIP ขององคกรยงสามารถตรวจสอบการใชโทรศพทของแตละหมายเลขผาน Web Browser ไดอกดวย ซงจะท าใหการจดการระบบ VoIP เกดประสทธภาพสงสด

ภาพท 3-3 ระบบ Asterisk Server บน Fedora

42

3.4 การตดตง Fedora core 13 1.) Download Fedora 13 Live GNOME iso image จาก

http://download.fedoraproject.org/pub/fedora/linux/releases/13/Live/i686/Fedora-13-i686-Live.iso จากนนเขยนไฟลในแผน CD เรมตนการตดตง Fedora โดยการ boot จากแผน CD จากนนรอสกคร

รปท 3-4 boot จากแผน CD

2.) ท าการเลอก Automatic Login คลก login

รปท 3-5 Automatic Login คลก login

43

3.) คลกทไอคอน Install to Hard Drive

รปท 3-6 ดบเบลคลกท Install to Hard Drive

4.) การตดตง Fedora เรมตน คลก Next

รปท 3-7 คลก Nextเพอเรมการตดตง

44

5.) เลอก keyboard layout

รปท 3-8 เลอกkeyboard layout เปน US.English แลว Next

6.) เลอก Basic Storage Devices here

รปท 3-9 เลอก Basic Storage Devices here แลวNext ตอไป

45

7.) ท าเครองหมายในชองดานหนาของฮารดไดรฟทคณตองการตดตง Fedora และคลกท Next

รปท 3-10 เลอก VMware แลว Next

8.) คลกท Re-initialize

รปท 3-11 คลกเลอก Re-initialize แลว Next

46

9.) จะเหนHostname ชอวา localhost.localdomain

รปท 3-12 คลก Next

10.) เลอก Time zone ของคณแลวคลก Next

รปท 3-13 คลกเลอก Asia/Bangkok แลวเลอก Next

47

11.) ใส Password ของ root แลว คลก Next

รปท 3-14 ท าการตงชอ Password ของ root แลว Next

12.) เลอก Replace Existing Linux System(s) แลวคลก Next

รปท 3-15 เลอกท Replace Existing Linux System(s) แลวคลก Next

48

13.) คลกท Write changes to disk

รปท 3-16 Write changes to disk แลวท าการ Next

14.) เรมการตดตงอาจใชเวลาหลายนาท

รปท 3-17 ขนตอนเรมการตดตง คลก Next

49

15.) การตดตงเสรจสน คลก Close

รปท 3-18 เลอก คลกท Close

16.) ท าการ reboot ระบบใหม ไปท System > Shut Down...

รปท 3-19 Shut Down เพอreboot ระบบ

50

17.) เรมขนระบบใหม คลก Forward

รปท 3-20 คลกเลอก Forward

18.) ยอมรบ License คลก Forward

รปท 3-21 คลก Forward เพอท าการยอมรบ

51

19.) สราง User เพอเขาใชงานโดยกรอกขอมลใหครบ แลวกด Forward

รปท 3-22 สราง Userใหครบแลวคลกเลอก Forward

20.) เลอก Synchronize date and time over the network แลวคลก Forward

รปท 3-23 date and time แลวคลก Forwrad

52

21.) เลอก Send Profile แลวคลก Finish

รปท 3-24เลอก Send Profile แลวคลกเลอก Finish

22.) เลอก User ทไดสรางไว และใสรหสผาน แลวท Log inเพอเขาสหนาจอ

รปท 3-25 ท าการ Login

53

23.) หนา desktop Fedora 13

รปท 3-26 จะปรากฏหนาจอ desktop Fedora 13

54

3.5 การตดตงและConfig คาของ Asterisk Server ขนตอนการตดตงและ Config Asterisk Server เปนดงน 3.5.1. การตดตง Asterisk Server

1.) เรมตนโดยการดาวนโหลด www.Asterisk.org หรอ www.digium.com มาไวทเครอง แลวท าการน าไฟลทดาวนมาคดลองลงไปใน directory /usr/src แลวท าการท าการเปด Terminal ไปท Applications > System Tools > ..

รปท 3-27 ไปท Applications > System Tools > Terminal

2.) อนดบแรกท าการตดตงและเปดใชงาน ssl เสยกอน เพอใหสามารถ Remote เขามาใชงานจากเครองอนๆ ได ทส าคญ Fedora จะตองเชอมตออนเทอรเสยกอน

รปท 3-28 พมพ su เพอเปนต าแหนงเปน root กด Enter และใสรหสผาน root

55

รปท 3-29 ตดตงssl โดยใชค าสง yum –y install openssl-devel

รปท 3-30 เมอตดตงเสรจ start ssl โดยใชค าสง /sbin/service sshd start

3.) ท าการ Remote เขาไปยง Fedora โดยใชโปรแกรม PuTTY ทตดตงบน Windows ใส ip เครอง Fedora

4.) และใส port 22 คลก Open เหตทท าการ Remote กเพอการใชงานทงายขนบนระบบปฏบตการทเคยคนเคย

56

รปท 3-31 ใส ip เครอง Fedora และใส port 22 คลก Open เหตทท าการ Remote

รปท 3-32 ใส root และ password ของ root ทเราใสกรอกตอนตดตง Fedora ในตอนแรก

5.) ท าการตดตง Packages ทจ าเปนตอการตดตง Asterisk โดยใชค าสง yum -y install gcc gcc-c++ libtermcap-devel kernel-devel bison mysql mysql-server mysql-devel อาจตองใชเวลาหลายนาทในการตดตง Packages รอจนกวาตดตง Packages ตางๆ เสรจสน

รปท 3-33 ใส yum -y install gcc gcc-c++ libtermcap-devel kernel-devel bison mysql mysql-server mysql-devel

57

6.) เรมตนการตดตง Asterisk Server ท าการ Downlond Asterisk จาก

http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.8.3.3.tar.gz

รปท 3-34 ใชโปรแกรม FileZilla ท าการ Remote ไปยง Fedora แลวท าการ Upload

ไฟล Asterisk ไปยง Fedora โดยวางไวท /usr/src

รปท 3-35 Upload ไฟล Asterisk ไปยง Fedoraท /usr/src

รปท 3-36ท าการ Extract ไฟล Asterisk ใชค าสง tar zxvf asterisk-1.8.3.3.tar.gz

58

รปท 3-37ยายต าแหนงเขาไปทโฟลเดอร Asterisk ใชค าสง cd asterisk-1.8.3.3

รปท 3-38ใชค าสง ./configure –disable-xmldoc

รปท 3-39 เสรจสนค าสงจะปรากฏขอมลดงรป

รปท 3-40ใชค าสง make

59

รปท 3-41 เมอเสรจสนค าสงจะปรากฏดงรป

รปท 3-42 ใชค าสง make install

รปท 3-43 เมอเสรจสนค าสงจากปรากฏดงรป

รปท 3-44 ใชค าสง make config

60

รปท 3-45 ใชค าสง make samples

รปท 3-46 เรมตนการใชงาน Asterisk ใชค าสง asterisk และ asterisk –rv จะปรากฏขอมลดงรปแสดงวา Asterisk Server พรอมใชงาน

3.5.2. การ config และใชงาน Asterisk Server

กลบมาทโปรแกรม FileZilla ในฝง Fedora ยายต าแหนงเขาไปท /etc/asterisk เปดไฟล sip.conf และ extensions.conf คลกขวาทไฟล แลวคลกท View/Editหรอ WordPad

รปท 3-47 เปดไฟล sip.conf และ extensions.conf คลกขวาทไฟล แลวคลกท View/EditหรอWordPad กได

61

รปท 3-48 เพมขอมลลงไปในบรรทดสดทายของไฟล sip.conf

รปท 3-49 เพมขอมลเสรจกด save และกดปดไฟล โปรแกรม FileZilla จะแสดง popup

ขนมา คลก Yes

username

password

62

รปท 3-50 เพมขอมลเสรจกด save และกดปดไฟล โปรแกรม FileZilla จะแสดง popup ขนมา คลก Yes

63

เปด Port 5060 UDP&TCP ใน Fedora เขาไปท System > Administration > Firewall เมอเขาไปยงหนาตาง Firewall คลก Close

รปท 3-51 ใน Fedora เขาไปท System > Administration > Firewall เมอเขาไปยงหนาตาง Firewall คลก Close

รปท 3-52 ใสรหสผานของ root คลก Authenticate

64

รปท 3-53 คลกท Other Ports จากนนคลกท Add

รปท 3-54 เลอก 5060 udp sip แลวคลก OK

65

รปท 3-55 เลอก 5060 tcp sip แลวคลก Add

รปท 3-56 คลก Yes แลวปดหนาตาง Firewall, Add Port เสรจสน คลกท Apply

66

3.6 ตดตง PhonerLite เพอเปน Soft phone Download PhonerLite จาก http://www.phonerlite.de/download_en.htm จากนน

คลกท PhonerLiteSetup.exe ท Download

รปท 3.56 ดบเบลคลกเพอท าการ Setup

รปท 3-57 Next เพอท าการตดตง

รปท 3-58 เลอกคลกท I accept the agreement

67

รปท 3-59 คลก next

รปท 3-60 Next ตอไป

68

รปท 3-61 คลกท Create a desktop icon แลว Next

รปท 3-62 คลก Install เพอเรมการท างาน

69

รปท 3-63 คลก Finish

รปท 3-64 แสดงหนาจอเรมตอนการท างาน

70

รปท 3-65 การใชงาน PhonerLiteหนาตางของ PhonerLite ใชงานคลกท Server ใส ip ของ Asterisk Server

รปท 3-66 ตอมาคลกท User กรอก Username และ password ท

71

รปท 3-67 กรอกขอมลเสรจสน คลกท Save โปรแกรมท าการเชอจะลงทะเบยนไปยง Asterisk Server เมอลงทะเบยนส าเรจจะปรากฏดงรป

3.7 การตดตงโปรแกรม MyAdmin ขนตอนการตดตง PhpMyAdmin มขนตอนตางๆ ดงน 3.7.1. การตดตงโปรแกรม phpMyAdmin

ในการตดตงโปรแกรม PhpMyAdmin ครงน เปนเวอรชน phpMyAdmin-3.1.1 รองรบไดหลายภาษา สามารถดาวนโหลดจากเครองแมขาย nservice ตามลงคทแสดงอย http://nservice.yru.ac.th/download/phpMyAdmin-3.1.1-all-languages.tar.gz

1.) ท าการดาวนโหลดโปรแกรมจากเครองแมขายทใหบรการ เกบไวใน เครองแมขายทเราตองตดตง ให ใชค าสง fetch ตามดวยลงคทอยของโปรแกรม myhost1# cd /usr/local/www/apache22 myhost1# fetch http://nservice.yru.ac.th/download/phpMyAdmin-3.1.1-all-languages.tar.gz หลงจากนนใหท าการคลายไฟลทอยในรปแบบ *.tar.gz โดยใชค าสง tar ตาม ดวย –zxvf myhost1# tar -zxvf phpMyAdmin-3.1.1-all-languages.tar.gz

2.) สราง link file ใหอยในไดเรกทอรของ Document Root โดยใชค าสง ln –s myhost1# cd /usr/local/www/apache22/data myhost1# ln -s /usr/local/www/apache22/phpMyAdmin-3.1.1-all-languages mysql

72

3.) ใหปรบแตงคาคอนฟกในไฟล config.inc.php เพอใหการใชงาน โปรแกรมไดสมบรณขน หลกจาก ทไดคลายโปรแกรมแลว และสราง link file เสรจแลว ใหคดลอกไฟล config.sample.inc.php เปน config.inc.php หลงจากนนปรบแตงคาในไฟล config.inc.php เพมเตม

myhost1# cd /usr/local/www/apache22/data/mysql myhost1# cp config.sample.inc.php config.inc.php myhost1# pico config.inc.php ไปทบรรทดทมค าวา blowfish_secret $cfg['blowfish_secret'] = ''

4.) ทดสอบโปรแกรม phpMyAdmin โดยการเปดเวบเบราวเซอรแลว พมพ url ของเครองแมขายตาม ดวย mysql เชน http://192.168.0.32/mysql จะปรากฏหนาจอ Login ของโปรแกรม phpMyAdmin ดง รปภาพท 3-64

ภาพท 3-68 แสดงการเขาใชงานโปรแกรม phpMyAdmin

6.) พมพชอผใชและรหสผานของผทสามารถใชงานฐานขอมลได (ชอ ผใชงานและรหสผานตองมอยใน ระบบแลว) แลวคลกทปม “ลงมอ” ดงภาพท 2.18

7.) สามารถเขาใชงานโปรแกรมได โดยไมมปญหาการใชงานใด ๆ เกดขนแสดงวาการตดตงและการ ปรบแตงคาคอนฟกของโปรแกรม phpMyAdmin เสรจสมบรณ เมอเลกใชโปรแกรม phpMyAdmin แลวใหท าการออกจากโปรแกรมทกครง โดยการกดเมน “ออกจากระบบ”

73

ภาพท 3-69 แสดงโปรแกรม phpMyAdmin

3.8. การตรวจสอบขอมลการใชโทรศพท CDR (Call Detail Record)

1.) ขนตอนการก าหนดคาให cdr.conf เพอท าการสรางระบบจดเกบขอมลการใชโทรศพท

CDR ท าการไฟล .csv จ าเปนในการใชงานเกบไวท

ภาพท 3-70 แสดงการก าหนดคาไฟล CDR

74

2.) ขนตอนการสรางฐานขอมล ชอ asterisk เพอใหบนทกขอมลการใช

โทรศพท ในโปรแกรม phpMyAdmin โดยใชค าสง CREATE DATABASE asterisk; GRANT INSERT ON asterisk.* TO asterisk@localhost IDENTIFIED BY 'yourpassword'; USE asterisk;

3.) การสรางตาราง cdr เพอเกบขอมลรายละเอยดการใช โทรศพท ในโปรแกรม phpMyAdmin

โดยใชค าสง CREATE TABLE `cdr` ( `calldate` datetime NOT NULL default '0000-00-00 00:00:00', `clid` varchar(80) NOT NULL default '', `src` varchar(80) NOT NULL default '', `dst` varchar(80) NOT NULL default '', `dcontext` varchar(80) NOT NULL default '', `channel` varchar(80) NOT NULL default '', `dstchannel` varchar(80) NOT NULL default '', `lastapp` varchar(80) NOT NULL default '', `lastdata` varchar(80) NOT NULL default '', `duration` int(11) NOT NULL default '0',

4.) การสรางตาราง user เพอเกบขอมลผมสทธเรยกดขอมลการใช

โทรศพท ในโปรแกรม phpMyAdmin โดยใชค าสง CREATE TABLE `user_login` (`id` int (11) NOT NULL auto_ `user_log` char(15) NOT NULL '', `pass_log` char(15) NOT NULL '',

75

ภาพท 3-71 แสดงการสรางฐานขอมลชอ asterisk และแสดงการสรางตาราง cdr และ user_login

5.) ขนตอนการเรยกใชฐานขอมลในตาราง cdr

ภาพท 3-72 แสดงการเรยกใชขอมลจากฐานขอมลชอ asterisk ตารางชอ cdr