Network Topology Simulation using GNS3
สร้าง topology ทั้ง 4 แบบในใบแลป ตั้ง IP ให้ VPCS และ router ทำ RIP ให้ ping ข้าม subnet ได้ แล้วดักจับด้วย Wireshark — ตาราง IP ในหน้านี้แทนค่า x = 3, y = 128 ให้เรียบร้อยแล้ว คัดลอกไปวางได้ทันที
ทำอะไร — ลากอุปกรณ์ใน GNS3 มาต่อกันเป็น 4 topology ที่ยากขึ้นเรื่อย ๆ: ① PC ล้วนบน subnet เดียว ② PC สองตัวคนละ subnet คั่นด้วย router 1 ตัว ③ แทรก switch เข้าไป ④ router สองตัวเชื่อมกันด้วย Serial แล้วใช้ RIP ให้คุยกันได้ ปิดท้ายด้วยการเปิด Wireshark ที่ลิงก์
ได้อะไร — ทักษะสามอย่างที่ข้อสอบใช้ทั้งหมด: ตั้ง IP ให้ทุกอุปกรณ์, ทำให้ router สองตัวคุยกันผ่าน Serial, และดักจับ packet
ออกสอบตรงไหน — ข้อ 1 (15 คะแนน) คือ topology ที่ 4 ขยายใหญ่ขึ้น และ ข้อ 2 (10 คะแนน) คือ Wireshark filter icmp / arp รวมกันคือ ครึ่งหนึ่งของข้อสอบแลป
1.1เป้าหมายและสิ่งที่ต้องส่ง
| # | สิ่งที่ใบแลปสั่งให้ทำ | ทำที่ไหนในหน้านี้ |
|---|---|---|
| 1 | สร้าง topology ที่ 1 (VPCS 3 ตัว) ตั้ง IP แล้ว ping หากัน · เปิด Wireshark ด้วย Start Capture ที่ลิงก์ แล้วอธิบายสิ่งที่เห็น | §1.9 |
| 2 | สร้าง topology ที่ 2 (router 1 ตัว + PC 2 ตัวคนละ subnet) config ทุก interface, ทำ RIP, ตั้ง gateway ให้ VPCS แล้ว ping · capture ซ้ำ | §1.10 |
| 3 | สร้าง topology ที่ 3 — แทรก switch เข้าไปแล้วทำให้ PC1 ping PC2 ได้ | §1.11 |
| 4 | สร้าง topology ที่ 4 — router 2 ตัว (LAB-A / LAB-B) เชื่อมด้วย Serial อย่างน้อย 2 อินเทอร์เฟซ ทำ RIP ทั้งสองตัว แล้ว ping ข้ามฝั่ง · capture ซ้ำ | §1.12 |
| 5 | ตรวจสอบ config ของ LAB-A ด้วย show interfaces แล้วหาความสัมพันธ์ระหว่างพอร์ตที่พบกับอุปกรณ์ที่ใช้ | §1.7 |
| 6 | คำถามท้ายการทดลอง 2 ข้อ — ออกแบบเครือข่ายจาก router 4 ตัว · อธิบายประเภทของ Port Adapters | §1.14 |
ใบแลปกำหนดว่า x = เลขหลังขีดของรหัสนักศึกษา และ y = เลขสามตัวก่อนขีด mod 254 · รหัส 673040128-3 → x = 3, y = 128 mod 254 = 128
| ในใบแลปเขียนว่า | ของคุณคือ | ใช้ทำอะไร |
|---|---|---|
192.x.y.0/24 | 192.3.128.0/24 | LAN ฝั่งซ้าย (PC1, PC2) |
193.x.y.0/24 | 193.3.128.0/24 | ลิงก์ Serial ระหว่าง router สองตัว |
194.x.y.0/24 | 194.3.128.0/24 | LAN ฝั่งขวา (PC3 / PC2 อีกฝั่ง) |
Subnet mask ทุกวงคือ 255.255.255.0 (เท่ากับ /24) ตามที่ใบแลประบุ | ||
1.2ส่วนต่าง ๆ ของโปรแกรม GNS3
GNS3 จำลองการทำงานของ ซอฟต์แวร์ IOS ในอุปกรณ์จริง ได้ใกล้เคียงถึง 90% จึงใช้คำสั่งของอุปกรณ์นั้นได้ทั้งหมด ต่างจากโปรแกรมจำลองบางตัวที่รองรับเฉพาะคำสั่งที่ผู้พัฒนาเตรียมไว้ — หน้าจอหลักแบ่งเป็น 6 ส่วนตามใบแลป
| # | ส่วน | ทำอะไร |
|---|---|---|
| 1 | Menu bar | เมนู File, Edit, View, Control, Device, Annotate, Tools, Help — คำสั่งพื้นฐาน เปิด/สร้างโปรเจกต์ใหม่/บันทึก และการตั้งค่าต่าง ๆ (บน Mac เมนู Preferences ย้ายไปอยู่ใต้ GNS3 ซ้ายบน) |
| 2 | Shortcut Icon Bar | คำสั่งที่ใช้บ่อย เช่น เปิด-ปิด, บันทึก — เร็วกว่าเข้าจาก Menu bar · ปุ่ม ▶ Start / ⏸ Suspend / ⏹ Stop ทั้งหมด อยู่แถบนี้ |
| 3 | Node Type | แถบซ้ายมือ เลือกอุปกรณ์ที่จะลากลงมา — Router, Switch, End devices (VPCS) และปุ่ม Add a link |
| 4 | Topology Graphic View | พื้นที่ตรงกลาง = ที่สร้าง topology · เป็นส่วนทำงานหลักของโปรแกรม |
| 5 | Console | สร้าง/แก้ไข configuration ผ่าน Command Line — เร็วกว่า GUI แต่ต้องอาศัยความเข้าใจและความชำนาญสูง |
| 6 | Topology Summary | รายการอุปกรณ์ทั้งหมดที่สร้างไว้ · topology เล็กอาจไม่จำเป็น แต่สำคัญมากเมื่ออุปกรณ์เยอะ (เช่น 4 router ในคำถามท้ายการทดลอง) |
1.3การใช้งาน GNS3 เบื้องต้น — สร้าง topology
สี่ขั้นนี้คือขั้นตอนที่ต้องทำซ้ำทุก topology ในใบแลป
- ลากอุปกรณ์ลงมา — เลือก VPCS และ Routers จาก Node Type แล้วคลิกลากมาวางใน Topology Graphic View
รูปที่ 21 จากใบแลป Lab 1 — การเลือก Devices วางลงยัง Topology Graphic View · ลากจากแผง All devices ทางซ้ายมาวางตรงกลาง แล้วชื่ออุปกรณ์จะไปโผล่ในแผง Topology Summary ทางขวาทันที - เชื่อมต่ออุปกรณ์ — กด Add a link ใน Node Type แล้วคลิกที่อุปกรณ์ → เลือกพอร์ต → ลากไปยังอุปกรณ์ที่ต้องการเชื่อม แล้วเลือกพอร์ตปลายทาง
รูปที่ 22 จากใบแลป Lab 1 — การเชื่อมต่ออุปกรณ์เข้าหากัน · เมนูที่กางลงมาจาก R1 คือรายชื่อพอร์ตจริงของ router ตัวนั้น — FastEthernet0/0(จากการ์ด slot 0),Ethernet1/0–Ethernet1/3และSerial2/0,Serial2/1· ชื่อที่เห็นในเมนูนี้คือชื่อที่ต้องพิมพ์ต่อท้ายคำสั่งinterfaceอย่าเดาเองจุดที่คนพลาดบ่อย — เลข slot ในใบแลปไม่ตรงกับชื่อพอร์ตในรูปนี้ใบแลปสั่งให้ตั้ง slot 1 =
PA-4T+(Serial) และ slot 2 =PA-4E(Ethernet) ตอนสร้าง template (ดูรูปที่ 19 ที่หน้าติดตั้ง §0.6) ซึ่งถ้าตั้งตามนั้นจะได้ชื่อSerial1/xกับEthernet2/x— แต่รูปที่ 22 ข้างบนกลับแสดงEthernet1/xกับSerial2/xและคำสั่งตัวอย่างทุกบล็อกในใบแลปก็ใช้แบบหลัง · สรุป: ใบแลปเขียนสลับกันเอง ห้ามท่องเลข slot — ให้เปิดเมนูพอร์ตแบบในรูปนี้ (หรือshow ip interface brief) ดูชื่อจริงก่อนพิมพ์ทุกครั้ง หน้านี้ใช้Ethernet1/0และSerial2/0ตามคำสั่งที่ใบแลปเขียนไว้จริง - กด Start ที่ Shortcut Icon Bar — ปุ่มมีสามแบบ: เปิดการทำงานของอุปกรณ์ทั้งหมด · ระงับการทำงานชั่วคราว · ปิดการทำงานทั้งหมด
รูปที่ 23 จากใบแลป Lab 1 — ปุ่มกด Shortcut Icon Bar · ▶ เขียว = เปิดการทำงานของอุปกรณ์ทั้งหมด · ⏸ เหลือง = ระงับการทำงานชั่วคราว · ⏹ แดง = ปิดการทำงานทั้งหมด · สามปุ่มนี้สั่งทุกตัวใน topology พร้อมกัน ถ้าอยากสั่งทีละตัวให้คลิกขวาที่อุปกรณ์แล้วเลือก Start / Stop - คลิกขวาที่อุปกรณ์ → Console เพื่อเข้าไป config
ถ้ายังไม่กด Start แล้วเปิด Console จะได้หน้าจอดำว่างเปล่าหรือ Connection refused — สีของจุดหน้าชื่ออุปกรณ์บอกสถานะ: แดง = หยุด, เขียว = ทำงาน ต้องเป็นเขียวก่อนถึงจะ console เข้าได้ · และ router c7200 ใช้เวลาบูตราวครึ่งนาที ถ้ากด console ทันทีจะเห็นข้อความบูตวิ่ง ให้รอจนขึ้น Router> แล้วค่อยพิมพ์
1.4คำสั่ง config IP ในโปรแกรม VPCS
VPCS คือคอมพิวเตอร์จำลองแบบเบา ๆ ใน GNS3 มีคำสั่งไม่กี่คำสั่ง ที่ต้องใช้จริงคือคำสั่งเดียว
VPCS[1]> ip <ip_address> <subnet_mask> <gateway>| ส่วน | ความหมาย |
|---|---|
<ip_address> | IP Address ของคอมพิวเตอร์เครื่องนั้น |
<subnet_mask> | Subnet mask เช่น 255.255.255.0 หรือเขียนย่อว่า /24 |
<gateway> | Default Gateway = interface ของ router ที่ PC ตัวนั้นต่ออยู่ · ใส่เฉพาะเมื่อต้องคุยข้าม subnet |
ของจริงที่ต้องพิมพ์ (แทนค่า x = 3, y = 128 แล้ว):
VPCS[1]> ip 192.3.128.2 255.255.255.0
VPCS[2]> ip 192.3.128.3 255.255.255.0
VPCS[3]> ip 194.3.128.2 255.255.255.0VPCS[1]> ip 192.3.128.2 255.255.255.0 192.3.128.1
VPCS[2]> ip 194.3.128.2 255.255.255.0 194.3.128.1
VPCS[1]> ping 194.3.128.2ใบแลปมีหมายเหตุตัวหนาไว้เลยว่า "อย่าลืมใส่ gateway ให้ PC โดย gateway คือ Interface ของสิ่งที่เราต้องการส่งไปหา" — ถ้าลืม อาการคือ ping ไปหา PC ใน subnet เดียวกันได้ปกติ แต่ ping ข้าม subnet จะขึ้น host unreachable ทันที โดยไม่มีแพ็กเก็ตออกจากเครื่องเลย เพราะ VPCS รู้ตัวเองว่าไม่มีทางไป จึงไม่ส่งอะไรออกมา — เปิด Wireshark ก็จะไม่เห็นอะไรเช่นกัน
1.5โหมดการทำงานของ Router และการตั้ง IP
โหมดการทำงาน (Listing 2)
Router>enable # จาก user mode ขึ้น privileged mode
Router#disable # ถอยกลับลงมา
Router>สังเกต สัญลักษณ์ท้าย prompt เป็นตัวบอกว่าอยู่โหมดไหน — > คือ user mode (ดูได้อย่างเดียว) และ # คือ privileged mode (ดูได้ทุกอย่างและเข้าโหมด config ได้) รายละเอียดของทุกโหมดอยู่ที่ Lab 2 §2.5
ตั้ง IP บนอินเทอร์เฟซ Ethernet (Listing 3)
Router>enable
Router#configure terminal
Router(config)#interface <interface type slot/port>
Router(config-if)#ip address <ip_address> <subnet_mask>
Router(config-if)#no shutdownของจริงบน c7200 ที่ใส่ PA-4E ไว้ที่ slot 1 (ตาม topology ที่ 2 ในใบแลป):
Router#configure terminal
Router(config)#interface Ethernet1/0
Router(config-if)#ip address 192.3.128.1 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#interface Ethernet1/2
Router(config-if)#ip address 194.3.128.1 255.255.255.0
Router(config-if)#no shutdownno shutdown
อินเทอร์เฟซของ router ทุกใบปิดอยู่โดยค่าเริ่มต้น (administratively down) ตั้ง IP อย่างเดียวไม่พอ ต้องสั่ง no shutdown ทุกครั้ง — อาการเวลาลืมคือ show ip interface brief ขึ้น administratively down / down และ ping ไม่ผ่านทั้งที่ IP ถูก
ตั้ง IP บนอินเทอร์เฟซ Serial (Listing 4)
Serial ต่างจาก Ethernet ตรงที่ต้องบอกความเร็วเพิ่มอีกสองบรรทัด
Router>enable
Router#configure terminal
Router(config)#interface <serial slot/port>
Router(config-if)#ip address <ip_address> <subnet_mask>
Router(config-if)#bandwidth 56
Router(config-if)#clock rate 56000
Router(config-if)#no shutdown| คำสั่ง | หมายความว่าอะไร |
|---|---|
bandwidth 56 | บอก IOS ว่าลิงก์นี้ "ถือว่า" มีความเร็ว 56 kbps — เป็นแค่ตัวเลขไว้ให้ routing protocol ใช้คำนวณ metric และให้ show interfaces รายงาน ไม่ได้ทำให้สายเร็วหรือช้าลงจริง |
clock rate 56000 | สั่งให้อินเทอร์เฟซนี้จ่ายสัญญาณนาฬิกา 56000 bps ให้อีกฝั่ง — ตั้งได้เฉพาะฝั่ง DCE · นี่คือความเร็วจริงของลิงก์ |
no shutdown | เปิดใช้งานอินเทอร์เฟซ |
โจทย์ปีที่แล้วเขียนว่า router ต้อง "ต่อเชื่อมผ่าน Serial Interface" และจุดที่คนตกมากที่สุดคือ ลืม clock rate ที่ฝั่ง DCE ทำให้ลิงก์ไม่ขึ้น เรื่อง DCE/DTE อธิบายละเอียดพร้อมภาพเคลื่อนไหวที่ Lab 2 §2.8 — Serial Interface
1.6RIP — Routing Information Protocol
RIP พัฒนาโดย Xerox Network System (XNS) เป็นหนึ่งใน Routing Protocol ที่ถูกใช้งานอย่างแพร่หลาย การทำงานของ RIP ถูกพัฒนาในลักษณะที่เป็น Background Process บน UDP ที่ Port 520 เรียกว่า routed ใน BSD แม้ว่า RIP จะเป็นโปรโตคอลที่ใช้สนับสนุนการส่งผ่าน package แต่ตัว RIP เองถูกห่อหุ้ม (encapsulated) ใน UDP datagram แล้วใส่เข้าไปใน IP package อีกที
ปัจจุบัน RIP ถือว่าเป็นโปรโตคอลที่ได้รับความนิยมสำหรับเน็ตเวิร์กขนาดเล็ก — จะเห็นได้จาก DSL หรือเคเบิลโมเด็มทั่วไปที่สนับสนุนการทำงานของ RIP ทำให้ถ้าเราต้องการสร้างเน็ตเวิร์กภายในบ้านหรือสำนักงาน สามารถใช้ router หลายตัวและใช้ RIP เป็น routing protocol ได้
Router>enable
Router#configure terminal
Router(config)#router rip
Router(config-router)#network <network_address>
Router(config-router)#network <network_address>
Router(config-router)#endการยกเลิก — พิมพ์ no นำหน้าคำสั่ง เช่น no router rip หรือ no network <network_address>
ตัวอย่างจากใบแลป (รูปที่ 24)
network จะไม่งงอีกเลย — router แต่ละตัวต่ออยู่กับ 2 วง จึงต้องประกาศ network 2 บรรทัด และวง 192.168.1.0 ที่อยู่ตรงกลางเป็นวงที่ router ทั้งสองตัวใช้ร่วมกัน จึงถูกประกาศทั้งสองฝั่ง (เทียบกับ topology ที่ 4 ของเรา: วงกลางคือ 193.3.128.0/24 ซึ่งเป็นสาย Serial)- Router 1 ประกอบด้วย network
192.168.1.0และ192.168.2.0— subnet mask255.255.255.0ทั้งคู่ - Router 2 ประกอบด้วย network
192.168.1.0และ192.168.3.0— subnet mask255.255.255.0ทั้งคู่
Router(config)#router rip
Router(config-router)#network 192.168.1.0
Router(config-router)#network 192.168.2.0
Router(config-router)#endRouter(config)#router rip
Router(config-router)#network 192.168.1.0
Router(config-router)#network 192.168.3.0
Router(config-router)#endnetwork ให้ถูก
network 192.3.128.0 ไม่ได้แปลว่า "ส่งข้อมูลไปหา 192.3.128.0" แต่แปลว่า "อินเทอร์เฟซของฉันใบไหนที่มี IP อยู่ในวงนี้ ให้เปิด RIP บนใบนั้น และประกาศวงนี้ให้เพื่อนบ้านรู้" — จึงต้องประกาศทุกวงที่ต่ออยู่กับ router ตัวนั้น รวมทั้งวงของสาย Serial ด้วย ไม่ใช่แค่วงของ LAN
คนมักประกาศแต่วง LAN ของตัวเอง (192.3.128.0 กับ 194.3.128.0) แล้วลืม 193.3.128.0 ซึ่งเป็นวงของสาย Serial — ผลคือ RIP ไม่ส่ง update ออกทางสาย Serial เลย router สองตัวจึงไม่รู้จักกัน และ ping ไม่ผ่านทั้งที่คำสั่งดูเหมือนถูกหมด ประกาศให้ครบทุกวงที่ต่ออยู่เสมอ
1.7ตรวจสอบค่าที่ติดตั้งไว้ (Listing 6)
Router#show interfaces
Router#show running-configshow interfaces— แสดงค่าทางสถิติของทุกอินเทอร์เฟซ ทั้ง IP, สถานะ line/protocol, bandwidth, จำนวนแพ็กเก็ตเข้า-ออก และ errorshow running-config— แสดงค่าการติดตั้งที่อยู่ใน RAM คือทุกอย่างที่เราพิมพ์ config ไว้ตอนนี้
ใบแลปเขียนว่า show running-configuration แต่ คำสั่งจริงของ Cisco IOS คือ show running-config (ย่อได้เป็น sh run) — IOS ยอมให้พิมพ์คำสั่งแบบย่อได้ แต่ไม่ยอมให้พิมพ์ยาวเกิน ถ้าพิมพ์ตามใบแลปเป๊ะ ๆ จะได้ % Invalid input detected at '^' marker.
ตัวอย่าง output ที่ควรเห็นเมื่อทุกอย่างถูกต้อง (ตัดมาเฉพาะส่วนสำคัญ):
Serial2/0 is up, line protocol is up
Internet address is 193.3.128.1/24
MTU 1500 bytes, BW 56 Kbit/sec, DLY 20000 usec
Encapsulation HDLC, loopback not set, keepalive set (10 sec)Interface IP-Address OK? Method Status Protocol
Ethernet1/0 192.3.128.1 YES manual up up
Ethernet1/1 unassigned YES unset administratively down down
Serial2/0 193.3.128.1 YES manual up upshow ip interface brief ไม่ได้อยู่ในใบแลป แต่มีประโยชน์มากตอนสอบ เพราะสรุปทุกอินเทอร์เฟซใน 1 หน้าจอ แทนที่จะต้องเลื่อนอ่าน show interfaces ยาว ๆ · เช่นเดียวกับ show ip route ที่ใช้ดูว่า RIP ทำงานหรือยัง
1.8เปิด Wireshark ด้วย Start Capture ที่ลิงก์
ใบแลปสั่งข้อนี้ซ้ำหลังทุก topology: "คลิกขวาที่ link ใดก็ได้และทำการเลือก Start Capture เพื่อเปิด Wireshark และทำการ ping อีกครั้งพร้อมอธิบายสิ่งที่ได้รับและเกิดขึ้น"
- คลิกขวาที่เส้นสายที่ต้องการดัก (ไม่ใช่ที่ตัวอุปกรณ์) → เลือก Start Capture
- GNS3 จะบันทึกทราฟฟิกบนลิงก์นั้นเป็นไฟล์
.pcapแล้วเปิด Wireshark ขึ้นมาให้อัตโนมัติ — บน Mac ต้องมี Wireshark รุ่น Arm ลงไว้แล้ว (ดูวิธีลง) - กลับไปที่ VPCS แล้ว ping ใหม่อีกครั้ง — แพ็กเก็ตจะไหลเข้ามาในหน้าต่าง Wireshark ทันที
- ใส่ filter ตามที่ต้องการดู
| Display filter | เห็นอะไร |
|---|---|
icmp | เฉพาะ ping — Echo (ping) request / Echo (ping) reply · ข้อสอบข้อ 2 สั่งให้ใช้ตัวนี้ |
arp | เฉพาะ ARP — "Who has 192.3.128.1? Tell 192.3.128.2" และ "192.3.128.1 is at aa:bb:…" · ข้อสอบข้อ 2 สั่งให้ใช้ตัวนี้ |
ip.src == 192.3.128.2 | เฉพาะแพ็กเก็ตที่ออกจาก PC1 · ข้อสอบข้อ 2 สั่งให้ filter จาก source address ของการ ping |
ip.addr == 192.3.128.2 | ทั้งขาเข้าและขาออกของ PC1 (สะดวกกว่าเวลาต้องการเห็นทั้งคู่) |
udp.port == 520 | เฉพาะ update ของ RIP — ใช้พิสูจน์ว่า RIP ทำงานจริงและส่งออกทางสาย Serial |
"เปิด Wireshark ดักจับ packet ระหว่าง PC — filter จาก source address ของการ ping และ filter icmp กับ arp" → เตรียมสามบรรทัดนี้ไปให้ขึ้นใจ: ip.src == 192.3.128.2 · icmp · arp แล้วแคปหน้าจอส่ง
1.9Topology ที่ 1 — VPCS สามตัว
อุปกรณ์: VPCS 3 ตัวต่อเข้าด้วยกัน (ยังไม่มี router) — จุดประสงค์คือให้เห็นว่า IP ที่อยู่คนละวง คุยกันไม่ได้ถ้าไม่มี router
| Host Name | E0 | Gateway | Subnet Mask |
|---|---|---|---|
| PC1 | 192.3.128.2 | — | 255.255.255.0 |
| PC2 | 192.3.128.3 | — | 255.255.255.0 |
| PC3 | 194.3.128.2 | — | 255.255.255.0 |
VPCS[1]> ip 192.3.128.2 255.255.255.0
VPCS[2]> ip 192.3.128.3 255.255.255.0
VPCS[3]> ip 194.3.128.2 255.255.255.0
# ทดสอบ
VPCS[1]> ping 192.3.128.3 # PC1 → PC2 ต้องผ่าน (subnet เดียวกัน)
VPCS[1]> ping 194.3.128.2 # PC1 → PC3 ไม่ผ่าน (คนละ subnet ยังไม่มี router)| ผลที่ต้องได้ | output ที่ควรเห็น |
|---|---|
| PC1 → PC2 ผ่าน | 84 bytes from 192.3.128.3 icmp_seq=1 ttl=64 time=0.412 ms |
| PC1 → PC3 ไม่ผ่าน | host (194.3.128.2) not reachable หรือ *194.3.128.2 icmp_seq=1 timeout |
PC1 กับ PC2 อยู่วง 192.3.128.0/24 เหมือนกัน จึงคุยกันตรง ๆ ในเลเยอร์ 2 ได้ — Wireshark จะเห็น ARP request/reply ก่อน แล้วตามด้วย ICMP ส่วน PC3 อยู่วง 194.3.128.0/24 คนละวง PC1 จึงต้องส่งผ่าน gateway แต่ยังไม่ได้ตั้ง gateway และยังไม่มี router ในระบบ → ไม่มีแพ็กเก็ตออกจาก PC1 เลย นี่คือเหตุผลที่ topology ถัดไปต้องเพิ่ม router
1.10Topology ที่ 2 — Router 1 ตัว คั่นสอง subnet
อุปกรณ์: Router R1 หนึ่งตัว + VPCS สองตัวที่อยู่คนละวง ต่อเข้าที่ Ethernet1/0 และ Ethernet1/2 ของ router โดยตรง
| Host Name | E1/0 | E1/2 | Gateway | Enable PWD | Secret PWD | Console PWD | Vty PWD |
|---|---|---|---|---|---|---|---|
| R1 | 192.3.128.1 | 194.3.128.1 | — | class | datacom | Lab | Lab |
| PC1 | 192.3.128.2 | — | 192.3.128.1 | — | — | — | — |
| PC2 | 194.3.128.2 | — | 194.3.128.1 | — | — | — | — |
Router#configure terminal
Router(config)#interface Ethernet1/0
Router(config-if)#ip address 192.3.128.1 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#interface Ethernet1/2
Router(config-if)#ip address 194.3.128.1 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exitRouter(config)#router rip
Router(config-router)#network 192.3.128.0
Router(config-router)#network 194.3.128.0
Router(config-router)#endVPCS[1]> ip 192.3.128.2 255.255.255.0 192.3.128.1
VPCS[2]> ip 194.3.128.2 255.255.255.0 194.3.128.1
VPCS[1]> ping 194.3.128.2ใบแลปแนะนำว่า "สามารถ ping ไปยังแต่ละ IP เพื่อตรวจสอบว่าสามารถติดต่อได้ถึงจุดไหนแล้ว" — ไล่ทีละขั้นแบบนี้จะหาจุดพังได้เร็วที่สุด
VPCS[1]> ping 192.3.128.1 # ① ถึง gateway ของตัวเองไหม (ถ้าไม่ผ่าน = สายหลุด/ลืม no shutdown)
VPCS[1]> ping 194.3.128.1 # ② ถึงขาไกลของ router ไหม (ถ้าไม่ผ่าน = ขานั้นยังไม่ได้ตั้ง IP)
VPCS[1]> ping 194.3.128.2 # ③ ถึง PC ปลายทางไหม (ถ้าไม่ผ่าน = PC2 ลืมตั้ง gateway)ตามหลักแล้ว router ตัวเดียวที่ต่อทั้งสองวงอยู่แล้วไม่จำเป็นต้องใช้ RIP เพราะทั้งสองวงเป็น directly connected อยู่ในตารางอยู่แล้ว — แต่ใบแลปให้ทำเพื่อฝึกคำสั่งไว้ก่อนใช้จริงใน topology ที่ 4 ตอนนั้นมี router สองตัวและ RIP จะกลายเป็นสิ่งจำเป็น (ส่วนขยาย: เหตุผลนี้ไม่ได้เขียนอยู่ในใบแลป)
1.11Topology ที่ 3 — แทรก switch เข้าไป
ใบแลปข้อ 12 เขียนสั้น ๆ ว่า "ทดสอบใช้ switch ตั้งค่า config เพื่อให้สามารถ PC1 ping ไปยัง PC2 ได้" — คือเอา topology ที่ 2 มาแล้วแทรก switch คั่นระหว่าง PC กับ router แทนที่จะเสียบสายตรง
Switch ทำงานที่ เลเยอร์ 2 — มันไม่มี IP ไม่มี gateway และ ไม่ต้อง config อะไรเลยก็ใช้งานได้ ในการต่อพื้นฐานแบบนี้ ฉะนั้น ตาราง IP เหมือน topology ที่ 2 ทุกประการ ไม่ต้องเปลี่ยนค่าอะไรเลย สิ่งเดียวที่เปลี่ยนคือแพ็กเก็ตเดินผ่าน switch เพิ่มมาหนึ่งตัว
| Host Name | Interface | IP | Gateway |
|---|---|---|---|
| R1 | Ethernet1/0 | 192.3.128.1 | — |
| R1 | Ethernet1/2 | 194.3.128.1 | — |
| PC1 | e0 → switch | 192.3.128.2 | 192.3.128.1 |
| PC2 | e0 → switch | 194.3.128.2 | 194.3.128.1 |
- ลาก Ethernet switch จาก Node Type มาวางระหว่าง PC1 กับ R1
- ต่อสาย
PC1 e0 → switch พอร์ตใดก็ได้และswitch อีกพอร์ต → R1 Ethernet1/0 - ตั้ง IP เหมือนเดิมทั้งหมด (switch ไม่ต้องแตะ) แล้ว ping ผ่านได้ทันที
- คลิกขวาที่ลิงก์ ระหว่าง switch กับ router → Start Capture จะเห็นทั้ง ARP และ ICMP วิ่งผ่าน
"Ethernet switch" ที่ติดมากับ GNS3 เป็นสวิตช์จำลองแบบไม่มี CLI — ต่อสายแล้วใช้ได้เลย แต่ console เข้าไม่ได้ และไม่มี show mac-address-table ถ้าข้อสอบสั่งให้ส่ง show mac-address-table (ซึ่งข้อ 1 ปีที่แล้วสั่ง) ต้องใช้ image L2-ADVENTERPRISE (IOU) แทน หรือทำกับสวิตช์เครื่องจริงใน Lab 2
1.12Topology ที่ 4 — Router 2 ตัวเชื่อมด้วย Serial
โจทย์ปีที่แล้วคือ topology นี้ขยายเป็น router ≥ 2 ตัว แต่ละตัวมี switch และแต่ละ switch มี PC อย่างน้อย 1 ตัว — ทำ topology นี้ให้คล่องจนหลับตาทำได้ = ได้ 15 คะแนนแน่นอน
ใบแลปข้อ 13 สั่งว่า "เลือกเราเตอร์ใดก็ได้แล้วทำการเพิ่ม slot พอร์ต FastEthernet หรือ Ethernet ตามชนิดของเราเตอร์ที่เลือก และพอร์ต Serial อย่างน้อย 2 อินเทอร์เฟซ ระหว่างเราเตอร์" — ซึ่งเราเตรียมไว้แล้วตอนสร้าง template (slot1 = PA-4T+ ให้ Serial 4 พอร์ต, slot2 = PA-4E ให้ Ethernet 4 พอร์ต ดู การติดตั้ง §0.6)
โทโพโลยีที่ต้องสร้าง (รูปที่ 28 ในใบแลป)
on Darwin (64-bit))ต่ออะไรเข้าพอร์ตไหน — ไล่ตามรูปที่ 28 ทีละเส้น
| เส้น | ปลายที่ 1 | ปลายที่ 2 | ชนิดสาย | วง IP ของเส้นนี้ |
|---|---|---|---|---|
| ① | PC1 · พอร์ต e0 | LAB-A · ป้ายในรูป E0 → พอร์ตจริง Ethernet1/0 | Ethernet (เส้นตรงสีดำ) | 192.3.128.0/24 |
| ② | LAB-A · ป้ายในรูป S0 → พอร์ตจริง Serial2/0 | LAB-B · ป้ายในรูป S1 → พอร์ตจริง Serial2/1 | Serial (เส้นสีแดงมีหยัก) | 193.3.128.0/24 |
| ③ | LAB-B · ป้ายในรูป E0 → พอร์ตจริง Ethernet1/0 | PC2 · พอร์ต e0 | Ethernet (เส้นตรงสีดำ) | 194.3.128.0/24 |
E0 / S0 / S1 ในรูปคืออะไร
ป้ายเหล่านี้คือชื่อย่อที่ใบแลปใช้ในตารางที่ 1 (คอลัมน์ E0, S0, S1) ไม่ใช่ชื่อที่พิมพ์ลงคำสั่งได้ตรง ๆ — เวลา config ต้องใช้ชื่อพอร์ตจริงของ router ที่เห็นตอนลากสาย (รูปที่ 22 ที่ §1.3) ซึ่งบน c7200 ของเราคือ Ethernet1/0, Serial2/0, Serial2/1 · ถ้าเครื่องคุณขึ้นชื่ออื่น ให้ยึดชื่อที่เครื่องขึ้นเสมอ
ตาราง IP — แทนค่า x = 3, y = 128 เรียบร้อยแล้ว
| Host Name | E0 (Ethernet1/0) | S0 (Serial2/0) | S1 (Serial2/1) | Enable PWD | Secret PWD | Console PWD | Vty PWD |
|---|---|---|---|---|---|---|---|
| LAB-A | 192.3.128.1 | 193.3.128.1 | — | class | datacom | Lab | Lab |
| LAB-B | 194.3.128.1 | — | 193.3.128.2 | class | datacom | Lab | Lab |
| PC1 | 192.3.128.2gw 192.3.128.1 | — | — | — | — | — | — |
| PC2 | 194.3.128.2gw 194.3.128.1 | — | — | — | — | — | — |
ตารางที่ 1 ของใบแลป · Subnet Mask ทุกช่อง = 255.255.255.0
ขั้นตอนทั้งหมด (คัดลอกได้ทันที)
Router#configure terminal
Router(config)#interface Ethernet1/0
Router(config-if)#ip address 192.3.128.1 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#interface Serial2/0
Router(config-if)#ip address 193.3.128.1 255.255.255.0
Router(config-if)#bandwidth 56
Router(config-if)#clock rate 56000
Router(config-if)#no shutdown
Router(config-if)#exitRouter#configure terminal
Router(config)#interface Ethernet1/0
Router(config-if)#ip address 194.3.128.1 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#interface Serial2/1
Router(config-if)#ip address 193.3.128.2 255.255.255.0
Router(config-if)#bandwidth 56
Router(config-if)#clock rate 56000
Router(config-if)#no shutdown
Router(config-if)#exit① ใบแลปพิมพ์ว่า Router(config)#interface interface serial2/0 — มีคำว่า interface ซ้ำสองครั้ง ถ้าพิมพ์ตามจะได้ % Invalid input ที่ถูกคือ interface Serial2/0
② ใบแลปให้ใส่ clock rate 56000 ที่ ทั้งสองฝั่ง ซึ่งตามหลักแล้ว ฝั่ง DTE ตั้งไปก็ไม่มีผล (IOS บางรุ่นจะขึ้นเตือนว่า This command applies only to DCE interfaces) — ใส่ทั้งสองฝั่งไม่ทำให้พัง จึงพิมพ์ตามใบแลปได้ปลอดภัย แต่ต้องรู้ว่าฝั่งที่จำเป็นจริง ๆ คือ DCE เท่านั้น เช็กว่าใครเป็น DCE ด้วย show controllers → อธิบายเต็มที่ Lab 2 §2.8
Router#configure terminal
Router(config)#router rip
Router(config-router)#network 192.3.128.0
Router(config-router)#network 193.3.128.0
Router(config-router)#endRouter#configure terminal
Router(config)#router rip
Router(config-router)#network 194.3.128.0
Router(config-router)#network 193.3.128.0
Router(config-router)#endVPCS[1]> ip 192.3.128.2 255.255.255.0 192.3.128.1
VPCS[2]> ip 194.3.128.2 255.255.255.0 194.3.128.1
VPCS[1]> ping 194.3.128.2
# 84 bytes from 194.3.128.2 icmp_seq=1 ttl=62 time=31.204 ms
# 84 bytes from 194.3.128.2 icmp_seq=2 ttl=62 time=29.981 msVPCS ส่ง ping ออกด้วย TTL = 64 · ผ่าน router 1 ตัว TTL ลด 1 → ตอบกลับมาด้วย ttl=63 (topology 2 และ 3) · ผ่าน 2 ตัว → ttl=62 (topology 4) — ถ้า TTL ที่ได้ไม่ตรงกับจำนวน router ที่ควรผ่าน แปลว่าเส้นทางไม่ใช่ที่คิดไว้
Router#show interfaces
# หาความสัมพันธ์ระหว่างพอร์ตที่พบกับอุปกรณ์ (การ์ด) ที่ใส่ไว้ในแต่ละ slot:
# Ethernet1/0 … Ethernet1/3 → มาจากการ์ด PA-4E ที่ slot 1
# Serial2/0 … Serial2/3 → มาจากการ์ด PA-4T+ ที่ slot 21.13จุดที่ Mac ต่างจากที่ใบแลปเขียนไว้
| เรื่อง | ใบแลปเขียนไว้ (Windows) | ของ Mac ต้องทำแบบนี้ |
|---|---|---|
| ตัวติดตั้ง | GNS3-2.2.53-all-in-one.exe | GNS3-2.2.53.dmg จาก release เดียวกัน |
| เมนู Preferences | Edit → Preferences | GNS3 ซ้ายบน → Preferences (⌘+,) — ใบแลปมีหมายเหตุข้อนี้ไว้เอง |
| Wireshark | ติดมากับ all-in-one พร้อม WinPcap | ต้องโหลดแยก · เลือกรุ่น Arm · ต้องลง ChmodBPF.pkg ไม่งั้น Start Capture แล้วเปิดไม่ขึ้น |
| Console ของอุปกรณ์ | คลิกขวา → Console เปิด PuTTY ให้ | คลิกขวา → Console เปิด Terminal.app ให้แทน · ใน GNS3 ไม่ต้องใช้ screen (จะใช้ screen เฉพาะตอนต่อสายเข้าอุปกรณ์จริงใน Lab 2) |
| VPN KKU | เขียนไว้เป็นหมายเหตุบรรทัดแรก | เหมือนกัน — ต่อ VPN ก่อนเปิด GNS3 ถ้าใช้ server ของคณะ |
| ประสิทธิภาพ | — | อย่าลืมกด Idle-PC finder ตอนสร้าง template ไม่งั้น router 2 ตัวก็กิน CPU จน MacBook หน่วง |
1.14คำถามท้ายการทดลอง
ข้อ 1 — สร้างเครือข่ายจากเราเตอร์อย่างน้อย 4 ตัว
"สมมติว่านักศึกษามีเราเตอร์ดังกล่าวอย่างน้อย 4 ตัว ให้สร้างเครือข่ายจากเราเตอร์ที่มี ให้สามารถสื่อสารร่วมกันได้ โดยตรวจสอบจากคำสั่ง ping · แสดง topology ที่สร้างขึ้นมา · แสดงตาราง IP Address ที่ตรงกับรหัสตนเอง · แสดงผลการ ping ที่เกิดขึ้น"
แนวคำตอบ — ออกแบบแบบ chain 4 ตัว พร้อมตาราง IP ของรหัส 673040128-3
topology ที่เสนอ — ต่อ router เป็นสายโซ่ R1 — R2 — R3 — R4 โดยลิงก์ระหว่าง router ทุกเส้นเป็น Serial และแต่ละ router มี LAN ของตัวเองที่มี PC 1 ตัว
ตาราง IP (ต่อยอดรูปแบบ <เลขวง>.3.128.x ของใบแลป — วงที่เกินจาก 192/193/194 เป็นส่วนขยายที่เพิ่มขึ้นเอง เพราะใบแลปให้แค่ 3 วง):
| อุปกรณ์ | Ethernet1/0 (LAN) | Serial2/0 | Serial2/1 | ประกาศใน RIP |
|---|---|---|---|---|
| R1 | 192.3.128.1 | 193.3.128.1 DCE | — | 192.3.128.0 · 193.3.128.0 |
| R2 | 194.3.128.1 | 197.3.128.1 DCE | 193.3.128.2 | 193.3.128.0 · 194.3.128.0 · 197.3.128.0 |
| R3 | 195.3.128.1 | 198.3.128.1 DCE | 197.3.128.2 | 195.3.128.0 · 197.3.128.0 · 198.3.128.0 |
| R4 | 196.3.128.1 | — | 198.3.128.2 | 196.3.128.0 · 198.3.128.0 |
| PC1 | 192.3.128.2 gw 192.3.128.1 | ต่อกับ LAN ของ R1 | ||
| PC2 | 194.3.128.2 gw 194.3.128.1 | ต่อกับ LAN ของ R2 | ||
| PC3 | 195.3.128.2 gw 195.3.128.1 | ต่อกับ LAN ของ R3 | ||
| PC4 | 196.3.128.2 gw 196.3.128.1 | ต่อกับ LAN ของ R4 | ||
สูตรที่ใช้กับทุก router — เปลี่ยนแค่เลข IP กับรายการ network
Router#configure terminal
Router(config)#interface Ethernet1/0
Router(config-if)#ip address <LAN ของตัวเอง> 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#interface Serial2/0
Router(config-if)#ip address <IP ฝั่ง Serial> 255.255.255.0
Router(config-if)#bandwidth 56
Router(config-if)#clock rate 56000 # เฉพาะฝั่ง DCE
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#router rip
Router(config-router)#network <ทุกวงที่ต่ออยู่กับ router ตัวนี้>
Router(config-router)#endผลการ ping ที่ต้องแสดง — ping จากปลายด้านหนึ่งไปอีกด้านหนึ่ง (ไกลสุด = ผ่าน 3 router)
VPCS[1]> ping 196.3.128.2
# 84 bytes from 196.3.128.2 icmp_seq=1 ttl=61 time=52.8 ms ← 64 − 3 hop = 61
VPCS[1]> ping 194.3.128.2 # ttl=63 (ผ่าน 1 router)
VPCS[1]> ping 195.3.128.2 # ttl=62 (ผ่าน 2 router)ประเด็นที่ควรเขียนอธิบายในรายงาน — RIP ใช้ hop count เป็น metric และรับได้สูงสุด 15 hop (16 = ถือว่าไปไม่ถึง) เครือข่าย 4 router แบบนี้ห่างกันแค่ 3 hop จึงยังอยู่ในขอบเขตที่ RIP ทำงานได้สบาย · ค่า TTL ที่ลดลงทีละ 1 ต่อ router เป็นหลักฐานว่าแพ็กเก็ตเดินผ่านครบทุกตัวจริง
ข้อ 2 — จงอธิบายประเภทของ Port Adapters หรือ Interface Cards แต่ละชนิด
แนวคำตอบ — Port Adapter คืออะไร และอ่านชื่อพอร์ตยังไง
Port Adapter (PA) หรือ Interface Card คือการ์ดที่เสียบเพิ่มลงใน slot ของ router เพื่อเพิ่มพอร์ต — ตัว router เปล่า ๆ ไม่มีพอร์ตมาให้ครบ ต้องเลือกใส่การ์ดตามชนิดของสายที่จะใช้ ซึ่งเราทำไปแล้วตอนสร้าง template ของ c7200
| การ์ด | อยู่ slot | ให้พอร์ตอะไร | ชื่อที่ IOS เรียก |
|---|---|---|---|
| PA-4T+ | slot 1 | Serial 4 พอร์ต (T = synchronous serial) ใช้เชื่อม router ↔ router ระยะไกล ต้องตั้ง clock rate ที่ฝั่ง DCE | Serial1/0 – Serial1/3 |
| PA-4E | slot 2 | Ethernet 4 พอร์ต (10 Mbps) ใช้ต่อ LAN ฝั่งผู้ใช้ ต่อกับ switch หรือ PC | Ethernet2/0 – Ethernet2/3 |
ใบแลปสั่งไว้ตอนสร้าง template ว่า slot 1 = PA-4T+ และ slot 2 = PA-4E (รูปที่ 19 ที่หน้าติดตั้ง §0.6) ตารางข้างบนจึงเขียนตามนั้น — แต่คำสั่งตัวอย่างทุกบล็อกในใบแลปกลับใช้ Ethernet1/x และ Serial2/x ซึ่งแปลว่าการ์ดอยู่สลับกัน และรูปที่ 22 ที่ §1.3 ก็ยืนยันว่าเมนูพอร์ตจริงขึ้นเป็น Ethernet1/0…1/3 กับ Serial2/0…2/1 · เวลาตอบข้อสอบให้อธิบายที่ "การ์ดใบไหนให้พอร์ตชนิดใดกี่พอร์ต" ไม่ใช่ท่องเลข slot แล้วยกชื่อพอร์ตจากเครื่องจริงมาอ้างด้วย show interfaces
วิธีอ่านชื่อพอร์ต — รูปแบบคือ <interface type> <slot>/<port> ตามที่ใบแลปเขียนไว้ใน Listing 3
Serial 2 / 1
ชนิดของอินเทอร์เฟซ · หมายเลข slot ที่การ์ดเสียบอยู่ · หมายเลขพอร์ตบนการ์ดใบนั้น (นับจาก 0)
ตรวจสอบของจริงได้จาก show interfaces — พอร์ตที่ปรากฏจะสอดคล้องกับการ์ดที่เสียบ ถ้าใส่แต่ PA-4E ก็จะไม่เห็นชื่อ Serial… เลย
นอกจากสองใบข้างบน ใน GNS3 ยังเลือกได้อีกหลายแบบ เช่น PA-2FE-TX / PA-FE-TX (Fast Ethernet 100 Mbps), PA-GE (Gigabit Ethernet), PA-8T (Serial 8 พอร์ต) — หลักการเดียวกันคือ ชื่อการ์ดบอกทั้งจำนวนพอร์ตและชนิดของพอร์ต เช่น 4T = 4 พอร์ต serial, 4E = 4 พอร์ต Ethernet · รายละเอียดนี้ไม่ได้อยู่ในใบแลป
1.15เช็คว่าทำถูกไหม
| คำสั่ง | ต้องได้ผลอะไร |
|---|---|
show ip interface brief | ทุกใบที่ตั้ง IP ไว้ต้องเป็น up / up ทั้งสองคอลัมน์ · ถ้าเป็น administratively down = ลืม no shutdown · ถ้าเป็น up / down บน Serial = ลืม clock rate ที่ฝั่ง DCE |
show interfaces | ท่อนของ Serial ต้องขึ้น BW 56 Kbit/sec (พิสูจน์ว่า bandwidth 56 เข้าแล้ว) |
show running-config | ต้องเห็นทั้ง ip address ของทุกใบ และบล็อก router rip พร้อม network ครบทุกวง |
show ip route ส่วนขยาย | ต้องเห็นแถวขึ้นต้นด้วย R (เรียนรู้จาก RIP) ไม่ใช่มีแต่ C — ถ้ามีแต่ C แปลว่า RIP ยังไม่ได้แลกเปลี่ยนกัน |
ping จาก VPCS | ต้องได้ reply พร้อม TTL ที่ตรงกับจำนวน router ที่ผ่าน (64 − จำนวน hop) |
Codes: C - connected, S - static, R - RIP, ...
192.3.128.0/24 is directly connected, Ethernet1/0
C 193.3.128.0/24 is directly connected, Serial2/0
R 194.3.128.0/24 [120/1] via 193.3.128.2, 00:00:12, Serial2/0
# ตัว R = เรียนรู้มาจาก RIP · [120/1] = AD 120 / metric 1 hop1.16ถ้าไม่ผ่าน ให้ไล่ตามนี้
| อาการ | สาเหตุ | คำสั่งแก้ |
|---|---|---|
| ping ใน subnet เดียวกันยังไม่ผ่านเลย | ยังไม่ได้กด Start หรือสายต่อผิดพอร์ต | ดูจุดหน้าชื่ออุปกรณ์ให้เป็นสีเขียว · คลิกที่สายดูว่าปลายทั้งสองไปเข้าพอร์ตที่ตั้ง IP ไว้จริง |
ping ข้าม subnet ขึ้น host not reachable ทันที ไม่มีแพ็กเก็ตออก | VPCS ยังไม่ได้ตั้ง gateway | ip 192.3.128.2 255.255.255.0 192.3.128.1 แล้ว show ip ใน VPCS ยืนยัน |
| ping ถึง gateway ตัวเองได้ แต่ไปต่อไม่ได้ | ขาไกลของ router ยังไม่ได้ตั้ง IP หรือลืม no shutdown | show ip interface brief → หาแถวที่เป็น administratively down แล้วเข้าไป no shutdown |
Serial ขึ้น up / down | ไม่ได้ตั้ง clock rate ที่ฝั่ง DCE | show controllers Serial2/0 หาว่าใครเป็น DCE → เข้าไปใส่ clock rate 56000 ที่ฝั่งนั้น |
| ping ถึงขาไกลของ router ตัวแรกได้ แต่ไม่ถึงฝั่งตรงข้าม | RIP ยังไม่แลกเปลี่ยนกัน — มักเพราะลืมประกาศวงของ Serial | show ip route ต้องมีแถว R · ถ้าไม่มี → router rip แล้ว network 193.3.128.0 ทั้งสองตัว |
| ping ออกไปแล้ว timeout ครั้งแรก แต่ครั้งต่อไปผ่าน | ปกติ — ครั้งแรกเสียเวลาไปกับ ARP | ไม่ต้องแก้ · ping ซ้ำ 2–3 ครั้งแล้วดูผลตั้งแต่ครั้งที่สอง |
| Start Capture แล้ว Wireshark ไม่เปิด | Wireshark ยังไม่ได้ลง หรือลงผิดรุ่น/ขาด ChmodBPF | ดู การติดตั้ง §0.7 — ต้องเป็นรุ่น Arm และมี ChmodBPF.pkg |
| router บูตช้ามาก / เครื่องหน่วง | ไม่ได้ตั้ง Idle-PC | Preferences → IOS routers → Edit → Idle-PC finder |
1.17ถ้าออกสอบ ต้องทำอะไรได้บ้าง
เช็กลิสต์สำหรับห้องสอบ — ทำตามลำดับนี้จะไม่ตกหล่น
- วาด topology และเขียนตาราง IP ลงกระดาษก่อนแตะเครื่อง — เขียนให้ครบว่าแต่ละ interface ได้ IP อะไร วงไหนเป็น LAN วงไหนเป็น Serial
- สร้าง topology ใน GNS3 แล้วกด Start ให้ครบทุกตัว รอจนขึ้น
Router> - Config Ethernet ของทุก router —
interface→ip address→no shutdown - Config Serial — เพิ่ม
bandwidth 56และclock rate 56000ที่ฝั่ง DCE - เปิด RIP ทุก router ประกาศ ทุกวงที่ต่ออยู่ รวมวงของ Serial
- ตั้ง IP + gateway ให้ VPCS ทุกตัว (อย่าลืม gateway)
- ping ให้ครบทุกคู่ แล้วแคปหน้าจอเก็บไว้
- เก็บผลที่ต้องส่ง —
show running-configของทุก router · (ข้อสอบยังขอshow mac-address-tableและshow arpด้วย → ดู Lab 2 §2.10) - Start Capture ที่ลิงก์ แล้ว ping ใหม่ · ใส่ filter
ip.src == 192.3.128.2,icmp,arpแล้วแคปหน้าจอทั้งสาม
1.18เช็คความเข้าใจ
no shutdown ครบ, Serial ขึ้น up/up และเปิด RIP ทั้งสองตัวโดยประกาศ network 192.3.128.0 ที่ LAB-A และ network 194.3.128.0 ที่ LAB-B แต่ ping จาก PC1 ไป PC2 ยังไม่ผ่าน สาเหตุคืออะไรnetwork 193.3.128.0 ซึ่งเป็นวงของสาย Serial ทั้งสองตัวbandwidth 56 ช้าเกินไป ทำให้แพ็กเก็ตหมดเวลาก่อนถึงnetwork ของ RIP ทำสองอย่าง: เปิด RIP บนอินเทอร์เฟซที่มี IP อยู่ในวงนั้น และ ประกาศวงนั้นให้เพื่อนบ้าน ถ้าไม่ประกาศ 193.3.128.0 ตัว RIP จะไม่ทำงานบนอินเทอร์เฟซ Serial เลย → ไม่มี update วิ่งข้ามสาย router สองตัวจึงไม่รู้จักกัน · ตรวจได้ด้วย show ip route ว่ามีแถวขึ้นต้นด้วย R หรือไม่ping 194.3.128.2 จาก PC1 ที่เป็น 192.3.128.2 โดยไม่ได้ตั้ง gateway — เปิด Wireshark ที่ลิงก์ไว้แล้ว จะเห็นอะไร194.3.128.2 แบบ broadcast แต่ไม่มีใครตอบ192.3.128.0/24) เห็นว่าอยู่คนละวง จึงต้องส่งให้ default gateway — แต่ยังไม่ได้ตั้ง gateway ไว้ PC1 จึงตัดสินใจได้ทันทีว่าไม่มีทางไป แล้วรายงาน host not reachable โดยไม่ส่งอะไรออกสายเลย ฉะนั้น Wireshark จะเงียบสนิท · เทียบกับกรณี ping ใน subnet เดียวกันที่จะเห็น ARP ก่อนแล้วตามด้วย ICMP84 bytes from 194.3.128.2 icmp_seq=1 ttl=62 — เลข ttl=62 บอกอะไรttl=63 = ผ่าน 1 router (topology 2, 3) และ ttl=62 = ผ่าน 2 router (topology 4) · ใช้ค่านี้ตรวจสอบได้ทันทีว่าเส้นทางที่แพ็กเก็ตเดินจริงตรงกับที่ออกแบบไว้หรือไม่① VPCS ตั้ง IP ด้วย ip <ip> <mask> <gw> — ข้าม subnet ต้องมี gateway เสมอ ② Router: enable → configure terminal → interface → ip address → no shutdown ③ Serial เพิ่ม bandwidth 56 + clock rate 56000 (ฝั่ง DCE) ④ RIP: router rip แล้ว network ทุกวงที่ต่ออยู่ รวมวงของ Serial ⑤ ตรวจด้วย show ip interface brief (ต้อง up/up) และ show ip route (ต้องมีแถว R) ⑥ Wireshark เปิดจาก คลิกขวาที่สาย → Start Capture filter ที่ต้องจำ: icmp · arp · ip.src == 192.3.128.2