[ต้นร่าง/รอการแก้ไข/ปรับปรุงเนื้อหา]
สำหรับผู้ที่ต้องการหา client ที่ดีๆ และใช้งานง่าย มาเชื่อมต่อกับ lab ที่เราสร้างขึ้นจาก dynamips และ gns3
ผมขอแนะนำให้ลองหาโปรแกรม vpcs มาใช้งานดู เพราะว่าเป็นโปรแกรมที่ใช้จำลอง client ที่ใช้งานง่าย และ
กินทรัพย์ยากรของระบบน้อยที่สุดเท่าที่เคยลองมา เพราะถ้าใช้พวก vmware หรือโปรแกรมอื่นๆ จะใช้เยอะกว่านี้
เพราะว่าจากนอกจากจะต้องติดตั้งตัว virtual pc แล้ว ก็ยังจะต้องมีการติดตั้ง os เอาไว้เพื่อใช้งานด้วย
สำหรับการใช้งานเป็น client สำหรับทำ lab เพื่อเตรียมสอบทั่วๆไป ผมว่า vpcs ก็ถือว่า ok แล้วนะครับ
การ download ไฟล์ที่จำเป็น
- ทำการดาวน์โหลด vpcs 1.6c หรือ เวอร์ชั่นล่าสุด จากเว็บไซท์ของ vpcs
ในตัวไฟล์ .zip นี้จะมี vpcs สำหรับทั้ง windows , linux และ mac osx มาให้แล้ว
- สำหรับ vpcs ที่ใช้งานบน windows นั้น จะเป็นไฟล์ vpcs.exe ส่วนของ linux ก็จะเป็น
ไฟล์ชื่อ vpcs หรือ vpcs_64 (ต้อง chmod ก่อน) และของ mac osx ก็จะเป็น vpcs.osx
การติดตั้งและใช้งานเบื้องต้น
- เมื่อดาวน์โหลดไฟล์มาได้แล้ว จะได้ไฟล์มาในรูปแบบที่เป็น .zip ไฟล์ จากนั้นให้ทำการ
เปิดไฟล์นั้นแล้ว extract ไฟล์ข้างในออกมาใส่เอาไว้ใน folder (จะตั้งชื่อว่าอะไรก็ได้)
- ก่อนจะใช้งาน ให้ทำการเปิดเข้าไปแก้ไขต่างๆในไฟล์ startup.vpc ซะก่อน สำหรับค่าต่างๆ
ที่เราจะเข้าไปแก้ไข ก็ได้แก่ ค่าของ client ที่จะใช้งาน เช่น ip address , gatewat , mask
- ในการเรียกใช้งาน vpcs สำหรับ windows ให้เรียกใช้งาน(ดับเบิ้ลคลิก) ที่ตัว vpcs.exe
- เพื่อป้องกันปัญหาการขัดกันในเรื่องของ port หรือ ปัญหาอื่นๆ เราควรจะต้องทำการ
เรียกใช้ vpcs ขึ้นมาทำงาน ก่อนที่จะเรียกใช้งาน dynamips หรือ gns3 ก่อนทุกครั้ง
- การตรวจสอบคำสั่งต่างๆของ vpcs สามารถทำได้โดยพิมพ์คำสั่ง ? ลงไปแล้วกด enter
คำสั่งในการใช้งาน (เบื้องต้น)
- ในการเปิดใช้งาน vpcs ขึ้นมานั้น ระบบจะแสดงจำนวน client ที่ได้มีการสร้างเอาไว้
และแจ้งข้อมูล ip , gateway และ subnet mask ของ client เหล่านั้นเอาไว้ด้วย
- หากต้องการตรวจสอบข้อมูลต่างๆของ client ใน vpcs เช่น ip address , gateway
subnet mask , mac และค่าต่างๆเกี่ยวกับ port ให้เราใช้คำสั่ง show เพื่อดูค่า
- การเลือกว่าจะใช้งาน client ตัวไหน ใช้การพิมพ์หมายเลข ของ client ตัวนั้นลงไป
เช่น ถ้าเราต้องการจะใช้งาน pc1 เราก็พิมพ์ 1 ลงไปใน ถ้าจะใช้ pc2 ก็พิมพ์ 2 ลงไป
เราสามารถตรวจสอบว่าเรากำลังใช้งาน pc ตัวไหนอยู่ ด้วยการดูที่ prompt ที่ vpcs แสดง
ถ้าหาก prompt เขียนว่า VPCS 1> ก็คือว่าเราอยู่ที่ pc1 ถ้าขึ้นว่า VPCS 2> ก็คือ pc2
- เราสามารถใช้งาน tracert และ ping ได้ โดยรูปแบบการใช้งานก็คือ พิมพ์คำว่า ping
หรือ tracert แล้วตามด้วย ip ของ client หรือ ip ของอุปกรณ์ ที่เราต้องการ
- คำสั่ง tracert ใน vpcs สามารถตั้งค่า max hop ได้ ว่าเราต้องการจะให้ทำการ tracert
ไปกี่ hop โดยใช้คำสั่ง tracert แล้วตามด้วย ip จากนั้นก็ใส่ค่า max hop ที่ต้องการลงไป
สำหรับค่า max hop ตาม default ของ vpcs นั้น จะมีค่าอยู่ที่ 16 hop
ค่าเกี่ยวกับ ip address ของ vpcs
- การตั้งค่า ip address ใน vpcs นั้น รองรับทั้ง ip ในระบบ ipv4 และ ipv6 นอกจากนี้
เรายังสามารถจะตั้ง ip ให้กับ client โดยตรง หรือจะให้ client รับ ip จาก dhcp ก็ได้
- การตั้งค่า ip address ของ client ใน vpcs สามารถทำได้ 2 วิธี วิธีแรกโดยทำได้โดย
เข้าไปแก้ไขในไฟล์ startup.vpc ส่วนอีกวิธีก็คือเข้าไปพิมพ์คำสั่งเพื่อตั้งค่าหลังจากเรา
ทำการเรียกใช้งาน vpcs ขึ้นมาแล้ว (ไปที่ client ที่ต้องการแล้วพิมพ์คำสั่งเพื่อตั้งค่า)
- ในการแก้ไขไฟล์ startup.vpc นั้น ถ้าหากเราอยากจะแก้ไขค่า ip ของ client ตัวไหน
ก็ให้ไปแก้ในช่วงที่มีการ remark เอาไว้ว่าเป็นส่วนของ client ตัวนั้น ถ้าหากว่ายังไม่มี
ข้อมูลของ client ตัวที่ต้องการอยู่ในไฟล์คอนฟิกเลย เราก็สามารถสร้างขึ้นมาเองได้
โดยใส่ตัวเลขของ client ตัวที่ต้องการลงไป แล้วบรรทัดต่อไปก็ใส่คำสั่งในการตั้ง ip
- คำสั่งในการสั่งให้ client รับค่า ip จาก dhcp ก็คือคำสั่ง dhcp (ไม่มีพารามิเตอร์อะไรต่อ)
- คำสั่งในการแก้ไขค่า ip address ของ client ก็คือ ip แล้วตามด้วยค่าต่างๆดังนี้
ip <ip address> <gateway> <subnetmask แบบย่อๆ>
- การตั้งค่า ip address ของ client ใน vpcs จะต้องตั้ง ip ให้อยู่ใน network เดียวกัน
กับ interface ของอุปกรณ์ที่เราทำการเชื่อมต่ออยู่ เพื่อจะได้สามารถติดต่อกันได้ …
- ค่า subnet mask ที่ใช้ ก็จะต้องเป็นค่าเดียวกันด้วย เช่น ถ้า interface นั้นใช้ค่าเป็น
255.255.255.0 เราก็ต้องใช้ค่าเป็น /24 ถ้าใช้เป็น 255.255.0.0 ก็ต้องใช้เป็น /16
ถ้าเป็น 255.0.0.0 ก็เป็น /8 แต่ถ้ามีการแบ่ง subnet ลงไปอีก ก็ต้องใช้ค่าให้ถูกต้อง
- ค่าของ gateway ที่เราจะใช้นั้น จริงๆแล้วก็คือการตั้งค่า default gateway นั่นเอง
ค่านี้เอาไว้ใช้เวลาที่ client ต้องการจะติดต่อกับอุปกรณ์อื่นๆ ที่ใช้ ip ต่าง network กัน
สำหรับการเชื่อมต่อกับอุปกรณ์ใน lab ให้เราก็ตั้ง gateway ของ client ตาม ip ของ
interface ที่ client ตัวนั้นเชื่อมต่ออยู่ เช่น ชี้มาที่ ip ของ lan interface ของ router
ค่าเกี่ยวกับ port ของ vpcs
- client หรือ pc ต่างๆใน vpcs จะมีค่า port ที่ใช้ในการติดต่อเป็นของตัวเอง โดยไม่ซ้ำกัน
ถ้าหากเราต้องการจะติดต่อกับ pc ตัวไหน ก็ต้องใช้ค่า port ในการติดต่อของ pc ตัวนั้น
- ค่าเริ่มต้นเกี่ยวกับ port ของ vpcs จะมีการตั้งค่า default เอาไว้เป็นค่าคงที่ โดยที่
client ตัวแรก หรือ pc1 จะมีค่า LPORT เริ่มต้นที่ 20000 / RPORT เริ่มต้นที่ 30000
ส่วนตัวอื่นๆ ก็จะมีค่า LPORT , RPORT เพิ่มไปทีละ 1 ตามลำดับ (เป็น udp port)
- ค่า LPORT นั้น หมายถึง port ที่ vpcs เปิดเอาไว้รอการติดต่อจาก dynamips / gns3
ค่า RPORT นั้น หมายถึง port ที่ dynamips / gns3 เปิดเอาไว้รอการติดต่อจาก vpcs
- การนำค่า LPORT,RPORT ไปใช้กับ dynamips/gns3 บน windows นั้น ต้องนำไปใช้งาน
ร่วมกับ nio_udp แต่ถ้าเราใช้งาน vpcs บน linux เราสามารถใช้งานร่วมกับ nio_tap ได้ด้วย
ปัญหาเบื้องต้นในการใช้งาน
- หากต้องการนำ vpcs ไปใช้งานร่วมกับ dynamips หรือ gns3 ในบางครั้งก็อาจจะ
พบปัญหาในเรื่องการขัดกันของ cygwin1.dll ที่ dynamips หรือ gns3 ใช้งานอยู่
ให้ทำการ rename ไฟล์ cygwin.dll ของ dynamips และ gns3 ให้เป็น .bak ไปก่อน
แล้วจากนั้นให้ทำการ copy ไฟล์ cygwin1.dll ที่ vpcs ใช้งานอยู่ ไปใส่เอาไว้แทน
ไฟล์ cygwin1.dll ของ dynamips นั้นจะเก็บอยู่ที่ \Program Files\Dynamips
ส่วน cygwin1.dll ของ gns3 นั้นจะอยู่ที่ \Program Files\GNS3\Dynamips
- ถ้าหากว่าเราเรียกใช้งาน vpcs ร่วมกับ dynamips หรือ gns3 แล้วมีการแจ้งว่ามีปัญหา
ในการเปิด port ให้ทำการปิด vpcs และ dynamips หรือ gns3 จากนั้น ให้เราทำการ
เรียกใช้งาน vpcs ขึ้นมาก่อน แล้วจึงเปิดใช้งาน dynamips หรือ gns3
- การตรวจสอบว่า vpcs มีการเปิด port ใช้งานเรียบร้อยแล้วหรือไม่ ให้ใช้คำสั่ง netstat -na
แล้วดูค่าในส่วนที่เป็น udp ถ้า vpcs มีการทำงานถูกต้อง จะมีการแจ้งว่ามีการเปิด udp port
ขึ้นมาใช้งาน ตั้งแต่ port หมายเลข 20000 ถึง 20008 (รวมทั้งหมด 9 pc)
(http://katiproject.info/pc-client-virtual-pc/instalatio-vpcs-for-windows)
ปล.เนื้อหาในส่วนนี้ผมยังเขียนเอาไว้เป็นหัวข้อๆแยกกันเอาไว้ก่อน ยังไม่มีเวลาปรับให้เป็นเนื้อหาให้เข้าที่
ข้อมูลในนี้ก็เลยออกจะดูห้วนๆไปนิด เอาไว้ถ้าผมพอจะมีเวลา ก็คงจะได้ปรับแก้เนื้อหาให้อ่านง่ายขึ้นนะครับ
สำหรับผู้ที่ต้องการหา client ที่ดีๆ และใช้งานง่าย มาเชื่อมต่อกับ lab ที่เราสร้างขึ้นจาก dynamips และ gns3
ผมขอแนะนำให้ลองหาโปรแกรม vpcs มาใช้งานดู เพราะว่าเป็นโปรแกรมที่ใช้จำลอง client ที่ใช้งานง่าย และ
กินทรัพย์ยากรของระบบน้อยที่สุดเท่าที่เคยลองมา เพราะถ้าใช้พวก vmware หรือโปรแกรมอื่นๆ จะใช้เยอะกว่านี้
เพราะว่าจากนอกจากจะต้องติดตั้งตัว virtual pc แล้ว ก็ยังจะต้องมีการติดตั้ง os เอาไว้เพื่อใช้งานด้วย
สำหรับการใช้งานเป็น client สำหรับทำ lab เพื่อเตรียมสอบทั่วๆไป ผมว่า vpcs ก็ถือว่า ok แล้วนะครับ
การ download ไฟล์ที่จำเป็น
- ทำการดาวน์โหลด vpcs 1.6c หรือ เวอร์ชั่นล่าสุด จากเว็บไซท์ของ vpcs
ในตัวไฟล์ .zip นี้จะมี vpcs สำหรับทั้ง windows , linux และ mac osx มาให้แล้ว
- สำหรับ vpcs ที่ใช้งานบน windows นั้น จะเป็นไฟล์ vpcs.exe ส่วนของ linux ก็จะเป็น
ไฟล์ชื่อ vpcs หรือ vpcs_64 (ต้อง chmod ก่อน) และของ mac osx ก็จะเป็น vpcs.osx
การติดตั้งและใช้งานเบื้องต้น
- เมื่อดาวน์โหลดไฟล์มาได้แล้ว จะได้ไฟล์มาในรูปแบบที่เป็น .zip ไฟล์ จากนั้นให้ทำการ
เปิดไฟล์นั้นแล้ว extract ไฟล์ข้างในออกมาใส่เอาไว้ใน folder (จะตั้งชื่อว่าอะไรก็ได้)
- ก่อนจะใช้งาน ให้ทำการเปิดเข้าไปแก้ไขต่างๆในไฟล์ startup.vpc ซะก่อน สำหรับค่าต่างๆ
ที่เราจะเข้าไปแก้ไข ก็ได้แก่ ค่าของ client ที่จะใช้งาน เช่น ip address , gatewat , mask
- ในการเรียกใช้งาน vpcs สำหรับ windows ให้เรียกใช้งาน(ดับเบิ้ลคลิก) ที่ตัว vpcs.exe
- เพื่อป้องกันปัญหาการขัดกันในเรื่องของ port หรือ ปัญหาอื่นๆ เราควรจะต้องทำการ
เรียกใช้ vpcs ขึ้นมาทำงาน ก่อนที่จะเรียกใช้งาน dynamips หรือ gns3 ก่อนทุกครั้ง
- การตรวจสอบคำสั่งต่างๆของ vpcs สามารถทำได้โดยพิมพ์คำสั่ง ? ลงไปแล้วกด enter
คำสั่งในการใช้งาน (เบื้องต้น)
- ในการเปิดใช้งาน vpcs ขึ้นมานั้น ระบบจะแสดงจำนวน client ที่ได้มีการสร้างเอาไว้
และแจ้งข้อมูล ip , gateway และ subnet mask ของ client เหล่านั้นเอาไว้ด้วย
- หากต้องการตรวจสอบข้อมูลต่างๆของ client ใน vpcs เช่น ip address , gateway
subnet mask , mac และค่าต่างๆเกี่ยวกับ port ให้เราใช้คำสั่ง show เพื่อดูค่า
- การเลือกว่าจะใช้งาน client ตัวไหน ใช้การพิมพ์หมายเลข ของ client ตัวนั้นลงไป
เช่น ถ้าเราต้องการจะใช้งาน pc1 เราก็พิมพ์ 1 ลงไปใน ถ้าจะใช้ pc2 ก็พิมพ์ 2 ลงไป
เราสามารถตรวจสอบว่าเรากำลังใช้งาน pc ตัวไหนอยู่ ด้วยการดูที่ prompt ที่ vpcs แสดง
ถ้าหาก prompt เขียนว่า VPCS 1> ก็คือว่าเราอยู่ที่ pc1 ถ้าขึ้นว่า VPCS 2> ก็คือ pc2
- เราสามารถใช้งาน tracert และ ping ได้ โดยรูปแบบการใช้งานก็คือ พิมพ์คำว่า ping
หรือ tracert แล้วตามด้วย ip ของ client หรือ ip ของอุปกรณ์ ที่เราต้องการ
- คำสั่ง tracert ใน vpcs สามารถตั้งค่า max hop ได้ ว่าเราต้องการจะให้ทำการ tracert
ไปกี่ hop โดยใช้คำสั่ง tracert แล้วตามด้วย ip จากนั้นก็ใส่ค่า max hop ที่ต้องการลงไป
สำหรับค่า max hop ตาม default ของ vpcs นั้น จะมีค่าอยู่ที่ 16 hop
ค่าเกี่ยวกับ ip address ของ vpcs
- การตั้งค่า ip address ใน vpcs นั้น รองรับทั้ง ip ในระบบ ipv4 และ ipv6 นอกจากนี้
เรายังสามารถจะตั้ง ip ให้กับ client โดยตรง หรือจะให้ client รับ ip จาก dhcp ก็ได้
- การตั้งค่า ip address ของ client ใน vpcs สามารถทำได้ 2 วิธี วิธีแรกโดยทำได้โดย
เข้าไปแก้ไขในไฟล์ startup.vpc ส่วนอีกวิธีก็คือเข้าไปพิมพ์คำสั่งเพื่อตั้งค่าหลังจากเรา
ทำการเรียกใช้งาน vpcs ขึ้นมาแล้ว (ไปที่ client ที่ต้องการแล้วพิมพ์คำสั่งเพื่อตั้งค่า)
- ในการแก้ไขไฟล์ startup.vpc นั้น ถ้าหากเราอยากจะแก้ไขค่า ip ของ client ตัวไหน
ก็ให้ไปแก้ในช่วงที่มีการ remark เอาไว้ว่าเป็นส่วนของ client ตัวนั้น ถ้าหากว่ายังไม่มี
ข้อมูลของ client ตัวที่ต้องการอยู่ในไฟล์คอนฟิกเลย เราก็สามารถสร้างขึ้นมาเองได้
โดยใส่ตัวเลขของ client ตัวที่ต้องการลงไป แล้วบรรทัดต่อไปก็ใส่คำสั่งในการตั้ง ip
- คำสั่งในการสั่งให้ client รับค่า ip จาก dhcp ก็คือคำสั่ง dhcp (ไม่มีพารามิเตอร์อะไรต่อ)
- คำสั่งในการแก้ไขค่า ip address ของ client ก็คือ ip แล้วตามด้วยค่าต่างๆดังนี้
ip <ip address> <gateway> <subnetmask แบบย่อๆ>
- การตั้งค่า ip address ของ client ใน vpcs จะต้องตั้ง ip ให้อยู่ใน network เดียวกัน
กับ interface ของอุปกรณ์ที่เราทำการเชื่อมต่ออยู่ เพื่อจะได้สามารถติดต่อกันได้ …
- ค่า subnet mask ที่ใช้ ก็จะต้องเป็นค่าเดียวกันด้วย เช่น ถ้า interface นั้นใช้ค่าเป็น
255.255.255.0 เราก็ต้องใช้ค่าเป็น /24 ถ้าใช้เป็น 255.255.0.0 ก็ต้องใช้เป็น /16
ถ้าเป็น 255.0.0.0 ก็เป็น /8 แต่ถ้ามีการแบ่ง subnet ลงไปอีก ก็ต้องใช้ค่าให้ถูกต้อง
- ค่าของ gateway ที่เราจะใช้นั้น จริงๆแล้วก็คือการตั้งค่า default gateway นั่นเอง
ค่านี้เอาไว้ใช้เวลาที่ client ต้องการจะติดต่อกับอุปกรณ์อื่นๆ ที่ใช้ ip ต่าง network กัน
สำหรับการเชื่อมต่อกับอุปกรณ์ใน lab ให้เราก็ตั้ง gateway ของ client ตาม ip ของ
interface ที่ client ตัวนั้นเชื่อมต่ออยู่ เช่น ชี้มาที่ ip ของ lan interface ของ router
ค่าเกี่ยวกับ port ของ vpcs
- client หรือ pc ต่างๆใน vpcs จะมีค่า port ที่ใช้ในการติดต่อเป็นของตัวเอง โดยไม่ซ้ำกัน
ถ้าหากเราต้องการจะติดต่อกับ pc ตัวไหน ก็ต้องใช้ค่า port ในการติดต่อของ pc ตัวนั้น
- ค่าเริ่มต้นเกี่ยวกับ port ของ vpcs จะมีการตั้งค่า default เอาไว้เป็นค่าคงที่ โดยที่
client ตัวแรก หรือ pc1 จะมีค่า LPORT เริ่มต้นที่ 20000 / RPORT เริ่มต้นที่ 30000
ส่วนตัวอื่นๆ ก็จะมีค่า LPORT , RPORT เพิ่มไปทีละ 1 ตามลำดับ (เป็น udp port)
- ค่า LPORT นั้น หมายถึง port ที่ vpcs เปิดเอาไว้รอการติดต่อจาก dynamips / gns3
ค่า RPORT นั้น หมายถึง port ที่ dynamips / gns3 เปิดเอาไว้รอการติดต่อจาก vpcs
- การนำค่า LPORT,RPORT ไปใช้กับ dynamips/gns3 บน windows นั้น ต้องนำไปใช้งาน
ร่วมกับ nio_udp แต่ถ้าเราใช้งาน vpcs บน linux เราสามารถใช้งานร่วมกับ nio_tap ได้ด้วย
ปัญหาเบื้องต้นในการใช้งาน
- หากต้องการนำ vpcs ไปใช้งานร่วมกับ dynamips หรือ gns3 ในบางครั้งก็อาจจะ
พบปัญหาในเรื่องการขัดกันของ cygwin1.dll ที่ dynamips หรือ gns3 ใช้งานอยู่
ให้ทำการ rename ไฟล์ cygwin.dll ของ dynamips และ gns3 ให้เป็น .bak ไปก่อน
แล้วจากนั้นให้ทำการ copy ไฟล์ cygwin1.dll ที่ vpcs ใช้งานอยู่ ไปใส่เอาไว้แทน
ไฟล์ cygwin1.dll ของ dynamips นั้นจะเก็บอยู่ที่ \Program Files\Dynamips
ส่วน cygwin1.dll ของ gns3 นั้นจะอยู่ที่ \Program Files\GNS3\Dynamips
- ถ้าหากว่าเราเรียกใช้งาน vpcs ร่วมกับ dynamips หรือ gns3 แล้วมีการแจ้งว่ามีปัญหา
ในการเปิด port ให้ทำการปิด vpcs และ dynamips หรือ gns3 จากนั้น ให้เราทำการ
เรียกใช้งาน vpcs ขึ้นมาก่อน แล้วจึงเปิดใช้งาน dynamips หรือ gns3
- การตรวจสอบว่า vpcs มีการเปิด port ใช้งานเรียบร้อยแล้วหรือไม่ ให้ใช้คำสั่ง netstat -na
แล้วดูค่าในส่วนที่เป็น udp ถ้า vpcs มีการทำงานถูกต้อง จะมีการแจ้งว่ามีการเปิด udp port
ขึ้นมาใช้งาน ตั้งแต่ port หมายเลข 20000 ถึง 20008 (รวมทั้งหมด 9 pc)
(http://katiproject.info/pc-client-virtual-pc/instalatio-vpcs-for-windows)
ปล.เนื้อหาในส่วนนี้ผมยังเขียนเอาไว้เป็นหัวข้อๆแยกกันเอาไว้ก่อน ยังไม่มีเวลาปรับให้เป็นเนื้อหาให้เข้าที่
ข้อมูลในนี้ก็เลยออกจะดูห้วนๆไปนิด เอาไว้ถ้าผมพอจะมีเวลา ก็คงจะได้ปรับแก้เนื้อหาให้อ่านง่ายขึ้นนะครับ