Configuring Basic Switch and Router Settings
แลปเครื่องจริง — ต่อ console เข้าอุปกรณ์ Cisco ด้วย screen (Mac ไม่มี PuTTY) ตั้งค่าพื้นฐานทั้ง switch และ router ทำ Serial ให้ link ขึ้น แล้วดักจับด้วย Wireshark ผ่าน port mirroring
ทำอะไร — แลปนี้ย้ายจากโลกจำลองมาที่อุปกรณ์จริง: รู้จักพอร์ตทุกชนิดบนตัวเครื่อง, ต่อสาย console เข้าไปตั้งค่า, config IP ให้ FastEthernet / GigabitEthernet / Serial, ทำ RIP, แล้วดักจับ packet ด้วย Wireshark ผ่าน monitor session
ได้อะไร — คำสั่งชุดเดียวกับที่ใช้ในข้อสอบข้อ 1 ทั้งหมด รวมทั้งวิธีทำให้ Serial link ขึ้น ซึ่งเป็นจุดที่คนตกกันมากที่สุด
ออกสอบตรงไหน — ข้อ 1 (15 คะแนน) สั่งให้ส่ง show running-config, show mac-address-table และ show arp ทั้งสามคำสั่งอยู่ในแลปนี้ · และโจทย์บังคับว่า router ต้องเชื่อมกันผ่าน Serial → อ่าน §2.8 ให้แตก
2.1เป้าหมายและสิ่งที่ต้องส่ง
| # | สิ่งที่ใบแลปสั่ง | อยู่ที่ไหน |
|---|---|---|
| 1 | เตรียมก่อนเข้าห้อง — ติดตั้ง Wireshark (Mac = รุ่น Arm + ChmodBPF), เครื่องมือต่อ console, ตั้ง IP และปิด Firewall ของเครื่องตัวเอง ไม่เตรียม = โดนหักคะแนน | §2.2 |
| 2 | รู้จัก Console / Power / MGMT / Ethernet / Serial / Auxiliary port บนตัวอุปกรณ์จริง | §2.3 |
| 3 | เปิดหน้า config ของ Router หรือ Switch บน Mac ด้วย screen | §2.4 |
| 4 | โหมดการทำงาน ของ router และคำสั่งดูชื่อ interface | §2.5 |
| 5 | Config IP ให้ FastEthernet / GigabitEthernet และ Serial (bandwidth, clock rate) | §2.7 · §2.8 |
| 6 | Port Mirroring ด้วย monitor session แล้วดักจับด้วย Wireshark | §2.11 |
| 7 | สร้าง network ตามรูปที่ 31–32 · ping ให้ครบ · ทำ RIP · ใช้ arp -a แล้วอธิบายสิ่งที่เกิดขึ้น | §2.11 |
| 8 | คำถามท้ายการทดลอง — ใช้ show interface ทุกอุปกรณ์ แล้วอธิบายว่าแต่ละอุปกรณ์มี interface อะไรบ้าง | §2.15 |
| Host Name | E0 | S0 | S1 | Enable PWD | Secret PWD | Console PWD | Vty PWD |
|---|---|---|---|---|---|---|---|
| LAB-A Cisco 1841 | 192.3.128.1FastEthernet 0/1 | 193.3.128.1Serial0/1/0 | — | class | datacom | Lab | Lab |
| LAB-B Cisco 4321 | 194.3.128.1GigabitEthernet 0/0/1 | — | 193.3.128.2Serial0/1/1 | class | datacom | Lab | Lab |
| PC1 | 192.3.128.2 | — | — | — | — | — | — |
| PC2 | 192.3.128.3 | — | — | — | — | — | — |
| PC3 | 194.3.128.2 | — | — | — | — | — | — |
| PC4 | 194.3.128.3 | — | — | — | — | — | — |
Subnet Mask ทุกช่อง = 255.255.255.0 (/24) · gateway ของ PC1/PC2 = 192.3.128.1 และ ของ PC3/PC4 = 194.3.128.1 — ใบแลปย้ำว่า "อย่าลืมใส่ gateway ให้ PC โดย gateway คือ Interface ของสิ่งที่เราต้องการส่งไปหา"
2.2สิ่งที่ควรเตรียมก่อนเข้าห้อง
ใบแลปเขียนไว้ตรง ๆ ว่า "หากไม่ได้เตรียมก่อนเข้าแล็ปจะโดนหักคะแนน"
ติดตั้ง Wireshark
Wireshark คือโปรแกรมวิเคราะห์โปรโตคอลเครือข่าย (network protocol analyzer) ที่ใช้กันอย่างแพร่หลายและถือเป็นมาตรฐานในอุตสาหกรรม เป็นเครื่องมือฟรีและโอเพนซอร์สที่ช่วยให้ตรวจสอบสิ่งที่เกิดขึ้นในเครือข่ายได้ละเอียดถึงระดับ packet
หน้าที่หลักของ Wireshark
- ดักจับข้อมูล (Packet Capture) — ดักข้อมูลที่รับส่งผ่านเครือข่ายแบบเรียลไทม์จากหลากหลายอินเทอร์เฟซ เช่น Ethernet, Wi-Fi, Bluetooth
- วิเคราะห์ข้อมูล (Packet Analysis) — แสดงรายละเอียดของแต่ละ packet แยกแยะตามโปรโตคอล
- กรองข้อมูล (Filtering) — จำกัดการแสดงผลเฉพาะ packet ที่สนใจ ตามโปรโตคอล หมายเลข IP หรือพอร์ต
- แสดงผลข้อมูล (Visualization) — นำเสนอในรูปแบบที่อ่านง่าย มีสถิติและกราฟ
ขั้นตอนติดตั้ง
Windows (ที่ใบแลปเขียน) — เข้า wireshark.org/download.html แล้วกด Next ไปเรื่อย ๆ จนติดตั้งเสร็จ
macOS (ของเรา) — ① เข้าเว็บเดียวกัน ② ในกรณีที่เป็นชิป M1 ขึ้นไป ให้เลือกดาวน์โหลดรูปแบบ Arm ③ ติดตั้งตามปกติ และให้ติดตั้ง ChmodBPF.pkg ด้วย
รูปหน้าจอของทุกขั้น (รูปที่ 1–8 ในใบแลปนี้ — ทั้งหน้าเว็บดาวน์โหลดที่ต้องเลือก macOS Arm Disk Image และหน้าจอ .dmg ที่มี Install ChmodBPF.pkg) อยู่รวมกันที่ หน้าติดตั้ง §0.7
MacBook Air M2 เป็น Apple Silicon → ต้องเลือกรุ่น Arm · และถ้าไม่ลง ChmodBPF.pkg จะเปิด Wireshark ได้แต่ไม่เห็น interface สักอันเลย เพราะ macOS ให้สิทธิ์อ่าน /dev/bpf* เฉพาะ root ตรวจสอบด้วย id -Gn | grep access_bpf → วิธีลงละเอียด
เครื่องมือต่อ console
ใบแลปให้ลง PuTTY (ใส่หมายเลข IP server หรือ port ที่ต้องการ connect แล้วเลือกประเภทการเชื่อมต่อ ซึ่งในการทดลองจะเลือกแบบ Serial) — แต่ PuTTY ไม่มีบน macOS เราใช้ screen ที่ติดมากับเครื่องแทน ดู §2.4
ตั้ง IP Address และปิด Firewall ของเครื่องตัวเอง
ขั้นตอนของ Windows กับของ Mac ต่างกันทั้งหมด → ดูตารางเทียบที่ §2.12 · ใบแลปมีรูปหน้าจอ macOS ของขั้นนี้ไว้ให้แล้ว (รูปที่ 19–21) ไล่ทีละหน้าจอได้ที่ §2.12 → ตั้ง IP Address ของ Mac
2.3ส่วนประกอบของอุปกรณ์จริง
ใบแลปให้ดูรูปพอร์ตของ Router รุ่น 1841 และ 4321 กับ Switch รุ่น 3650 และ 2950 แล้วอธิบายพอร์ตทั้ง 8 ชนิด
FastEthernet 0/1 ต่อ LAN และ Serial0/1/0 ต่อไป LAB-B · สังเกตว่า 1841 เป็นรุ่นเก่า จึงใช้ Power Cord แบบสายไฟบ้านและมี Auxiliary Port
GigabitEthernet 0/0/1 ต่อ LAN และ Serial0/1/1 ต่อมา LAB-A · เทียบกับ 1841 แล้วต่างสองอย่างที่เห็นด้วยตา: ไฟเป็นหัว 6 pin ไม่ใช่สายไฟบ้าน และพอร์ต LAN เป็น Gigabit ไม่ใช่ Fast Ethernet
Gi1/0/1), PC2 (Gi1/0/3) และเครื่องที่รัน Wireshark (Gi1/0/13) · สังเกตว่ามี Console Port ทั้งด้านหน้าและด้านหลัง และมี MGMT Port แยกต่างหากสำหรับใส่ IP จัดการตัวสวิตช์
Fa0/1) และ PC4 (Fa0/2) · รูปนี้คือตัวอย่างที่ดีที่สุดของ "Console Port หน้าตาเหมือนช่อง LAN" — ช่องด้านหลังที่เขียนว่า CONSOLE เป็นหัว RJ-45 สีฟ้าอ่อน เหมือนช่อง FastEthernet ด้านหน้าเป๊ะ แต่ใช้แทนกันไม่ได้| # | พอร์ต | คืออะไร |
|---|---|---|
| 1 | Console Port | พอร์ตที่ใช้สำหรับ config ตัวอุปกรณ์ โดยแต่ละรุ่นใช้อุปกรณ์ไม่เหมือนกัน — รุ่นเก่า Console Port มีลักษณะเหมือนหัว LAN (RJ-45) ต้องใช้ควบคู่กับตัวแปลงเป็น USB · รุ่นใหม่ Console Port มีลักษณะเหมือน Mini USB |
| 2 | Power Cord Connection | ช่องสำหรับจ่ายไฟเข้าอุปกรณ์ · อุปกรณ์อย่าง Switch สามารถทำงานได้เลยเพียงแค่เสียบ Power Cord |
| 3 | MGMT Port | พอร์ตซึ่งสามารถกำหนด IP ที่ switch: prompt ได้เลย — ใช้จัดการอุปกรณ์แยกออกจากทราฟฟิกของผู้ใช้ |
| 4 | Power switch | ปุ่มเปิดปิดการทำงานของอุปกรณ์ เช่น Router |
| 5 | 6 Pin Power Connection | ช่องจ่ายไฟแบบ 6 pin — Router รุ่นใหม่ของ Cisco จะใช้พอร์ตนี้แทน Power Cord Connection |
| 6 | Ethernet Port | พอร์ตสำหรับต่อสายแลนเข้ากับอุปกรณ์ · ของแต่ละอุปกรณ์ไม่เหมือนกัน แต่โดยทั่วไปจะมี Fast Ethernet และ Gigabit Ethernet |
| 7 | Serial Port | พอร์ตสำหรับการ config Interface Serial เพื่อใช้ตั้งค่าตัวของ Serial ต่าง ๆ ในการทดลอง → §2.8 |
| 8 | Auxiliary Port | พอร์ตสำรองที่ใช้เชื่อมต่อกับ router จากระยะไกลผ่าน modem |
บนอุปกรณ์รุ่นเก่า Console Port หน้าตาเหมือนช่อง LAN เป๊ะ ๆ (RJ-45) แต่ใช้แทนกันไม่ได้ — Console ใช้สัญญาณ serial ที่ 9600 bps ส่วน Ethernet ใช้สัญญาณคนละแบบ ถ้าเสียบสาย console เข้าช่อง Ethernet จะไม่มีอะไรขึ้นบนหน้าจอเลย · ให้ดูตัวหนังสือกำกับข้าง ๆ ช่อง โดยปกติจะเขียน CONSOLE ไว้และมักเป็นสีฟ้าอ่อน
2.4เปิดหน้า Config ด้วย screen (Mac)
ใบแลปมีหัวข้อ "การเปิดใช้หน้า Config Router หรือ Switch ของ Mac" เขียนวิธีนี้ไว้แล้ว — ทำตามได้เลย ไม่ต้องลงอะไรเพิ่ม เพราะ screen ติดมากับ macOS อยู่แล้ว
- ต่อสาย console ระหว่าง MacBook กับอุปกรณ์ — รุ่นเก่าใช้สาย console RJ-45 + ตัวแปลง USB · รุ่นใหม่ใช้สาย Mini USB ตรง ๆ (อย่าลืมตัวแปลง USB-A → USB-C)
รูปที่ 26 จากใบแลป Lab 2 — การเชื่อมต่อ PC และ Router · วงกลมเหลืองคือจุดที่ต้องเสียบ — ปลายหนึ่งเข้าช่อง CONSOLEของอุปกรณ์ อีกปลายเข้าช่อง USB ของโน้ตบุ๊ก (รูปในใบแลปใช้โน้ตบุ๊ก Windows ที่มีช่อง USB-A ในตัว — MacBook Air M2 มีแต่ USB-C ต้องมีตัวแปลงหรือ hub เพิ่ม ส่วนฝั่งที่เสียบเข้าอุปกรณ์เหมือนกันทุกประการ) - เปิด Terminal แล้วพิมพ์
ls /dev/tty.*[macOS Terminal]$ ls /dev/tty.* # /dev/tty.Bluetooth-Incoming-Port /dev/tty.usbmodem1301 # └── อันนี้แหละคืออุปกรณ์ที่เพิ่งเสียบ - พิมพ์
screen <port_name>แล้วกด Enter ก็จะเข้าหน้า config[macOS Terminal]$ screen /dev/tty.usbmodem1301 9600 # กด Enter อีก 1–2 ครั้ง จะเห็น prompt: # Switch> หรือ Router>ใบแลปเขียนแค่
screen <port_name>— การใส่9600ต่อท้ายเป็นส่วนขยายที่ควรทำ เพราะ console ของ Cisco ใช้ 9600 8N1 เป็นค่ามาตรฐาน ถ้าไม่ระบุแล้วค่าเริ่มต้นของเครื่องไม่ตรงจะเห็นแต่ตัวอักษรขยะ
รูปที่ 28 จากใบแลป Lab 2 — การเปิดหน้า Config ของ Mac · ผลของ ls /dev/tty.*จะมีชื่อโผล่มาหลายอัน — ตัวที่ต้องใช้คือ/dev/tty.usbmodem…(ตัวอื่นเป็น Bluetooth, หูฟัง, หรือ debug ของระบบ) แล้วเอาชื่อนั้นมาต่อท้ายscreen - ถ้ากดปิด Terminal ไปแล้วต้องการเข้าไป config อีกรอบ
[macOS Terminal]
$ screen -ls # ดูรายการ session ที่ค้างอยู่ $ screen -r <screen_number> # กลับเข้า session เดิม
รูปที่ 29 จากใบแลป Lab 2 — การเปิดหน้า Config ของ Mac · screen -lsจะขึ้นบรรทัดแบบ87135.ttys037.… (Detached)— เลขข้างหน้าจุดแรก (87135) คือ<screen_number>ที่เอาไปใส่ต่อท้ายscreen -r(สังเกตบรรทัดบนสุดด้วย: พิมพ์screen lsตกขีดกลางไปตัวเดียว มันจะไปเปิด session ใหม่แล้วดับทันที — ต้องเป็นscreen -ls) - ถ้าต้องการปิด screen
[macOS Terminal]
$ screen -X -S <screen_number> quit
รูปที่ 30 จากใบแลป Lab 2 — การเปิดหน้า Config ของ Mac · วิธียืนยันว่าปิดสำเร็จจริง — หลังสั่ง screen -X -S 87135 quitแล้วพิมพ์screen -lsซ้ำ ต้องขึ้นว่าNo Sockets foundถ้ายังเห็นบรรทัด session อยู่แปลว่ายังไม่ปิด และเปิดscreenใหม่จะเจอ Resource busy - ถอยออกโดยไม่ตัดการเชื่อมต่อ — กด Ctrl+A แล้วตามด้วย Ctrl+\ (ส่วนขยาย: ใบแลปไม่ได้เขียนปุ่มนี้ไว้ แต่จำเป็นมากเวลาอยากสลับไปทำอย่างอื่นแล้วกลับมา)
ปิดหน้าต่าง Terminal เฉย ๆ ไม่ได้ปิด session — พอเปิด screen ใหม่จะขึ้น Resource busy หรือจอดำนิ่ง ๆ · แก้ด้วย screen -ls แล้ว screen -X -S <id> quit ทุกอันที่ค้าง แล้วค่อยเปิดใหม่ สองคำสั่งนี้ต้องจำไปห้องสอบ
วิธีของเพื่อนที่ใช้ Windows — PuTTY (รูปที่ 27) · ทำตามไม่ได้บน Mac
รูปที่ 27 ในใบแลปคือ Device Manager กับ PuTTY ของ Windows · บน MacBook Air M2 ทำแบบนี้ไม่ได้ เพราะไม่มีทั้งสองโปรแกรม — ขั้นตอนของ Mac คือ ls /dev/tty.* แล้ว screen … 9600 ตามที่เขียนไว้ด้านบน (§2.4) · ดูรูปนี้ไว้เพื่อเทียบว่าอะไรแทนอะไรเท่านั้น: COM4 ของ Windows = /dev/tty.usbmodem1301 ของ Mac · ปุ่ม Open ของ PuTTY = คำสั่ง screen · ช่อง Speed 9600 = เลข 9600 ที่เราต่อท้ายคำสั่ง ห้ามไปนั่งหา PuTTY มาลง
COM4) แล้วกรอกลง Serial line ของ PuTTY พร้อมตั้ง Speed = 9600 และเลือก connection type = Serial แล้วกด Open · บน Mac ขั้นตอนทั้งหมดนี้ยุบเหลือคำสั่งเดียว: screen /dev/tty.usbmodem1301 96002.5โหมดการทำงานของ Router (Listing 1–2)
Router>enable
Router#disable
Router>Router>enable
Router#show running-configใบแลปเขียน show running-configuration แต่คำสั่งจริงของ Cisco IOS คือ show running-config (ย่อเป็น sh run ได้) — IOS ยอมให้พิมพ์ย่อแต่ไม่ยอมให้พิมพ์ยาวเกิน ถ้าพิมพ์ตามใบแลปเป๊ะจะได้ % Invalid input detected at '^' marker.
กดดูคำสั่งของแต่ละโหมดในภาพข้างล่าง — prompt ที่ท้ายชื่อบอกเสมอว่าอยู่โหมดไหน ถ้าพิมพ์คำสั่งแล้วขึ้น % Invalid input ให้ดูที่ prompt ก่อนเลยว่าอยู่ผิดโหมดหรือเปล่า
2.6ตั้ง hostname และรหัสผ่านตามตาราง
ตารางที่ 1 ของใบแลปกำหนด Host Name (LAB-A / LAB-B) และรหัสผ่าน 4 ช่อง (Enable = class · Secret = datacom · Console = Lab · Vty = Lab) ไว้ แต่ไม่ได้เขียนคำสั่งไว้ให้ — คำสั่งทั้งบล็อกข้างล่างนี้จึงเป็นส่วนขยายที่จำเป็นเพื่อทำให้ค่าในตารางเกิดขึ้นจริง (และเป็นคำสั่งชุดเดียวกับที่ต้องใช้ตอบข้อสอบข้อ 1 ที่สั่งให้ส่ง show running-config)
Router>enable
Router#configure terminal
# ── ชื่ออุปกรณ์ ───────────────────────────────
Router(config)#hostname LAB-A
# ── รหัสผ่านเข้า privileged mode ──────────────
LAB-A(config)#enable password class # Enable PWD (เก็บเป็นข้อความธรรมดา)
LAB-A(config)#enable secret datacom # Secret PWD (เข้ารหัสไว้ · ถ้ามีทั้งคู่ IOS ใช้ secret)
# ── รหัสผ่านสาย console ───────────────────────
LAB-A(config)#line console 0
LAB-A(config-line)#password Lab
LAB-A(config-line)#login
LAB-A(config-line)#exit
# ── รหัสผ่านเข้าทาง telnet/ssh (vty) ──────────
LAB-A(config)#line vty 0 4
LAB-A(config-line)#password Lab
LAB-A(config-line)#login
LAB-A(config-line)#exit| คำสั่ง | ทำอะไร | ค่าในตาราง |
|---|---|---|
hostname | เปลี่ยนชื่ออุปกรณ์ที่แสดงบน prompt — เห็นผลทันที ช่วยไม่ให้สับสนว่ากำลัง config ตัวไหน | LAB-A / LAB-B |
enable password | รหัสผ่านเข้า privileged mode · เก็บเป็นข้อความธรรมดา มองเห็นได้ใน show running-config | class |
enable secret | รหัสผ่านเข้า privileged mode แบบเข้ารหัส · ถ้าตั้งทั้งสองอย่าง IOS จะใช้ secret เสมอ | datacom |
line console 0 + password + login | ขอรหัสผ่านเมื่อมีคนต่อสาย console เข้ามา · ต้องมี login ด้วย ไม่งั้นรหัสที่ตั้งไว้จะไม่ถูกใช้ | Lab |
line vty 0 4 + password + login | ขอรหัสผ่านเมื่อมีคนเข้ามาทาง telnet/ssh · 0 4 คือช่องเชื่อมต่อพร้อมกัน 5 ช่อง | Lab |
login
password เป็นแค่การเก็บค่า ส่วน login คือคำสั่งที่สั่งให้ถาม — ถ้าตั้งแค่ password อย่างเดียว เข้ามาทาง console จะไม่ถูกถามรหัสเลย และตรวจงานจะถือว่าไม่ผ่าน · ตรงกันข้าม ถ้าใส่ login โดยยังไม่ได้ตั้ง password บนสาย vty จะเข้าทาง telnet ไม่ได้เลย (ขึ้น password required, but none set)
Banner ต้อนรับ
banner คือข้อความที่ขึ้นก่อนหน้า login ทุกครั้ง ใช้ประกาศเตือนผู้ที่เข้ามาใช้งาน · ไม่ได้อยู่ในใบแลป Lab 2 แต่เป็นค่าพื้นฐานที่มักถูกถามคู่กับ hostname และ password
LAB-A(config)#banner motd #Authorized access only - LAB-A#
# └── motd = message of the day
# อักขระตัวแรกหลัง banner motd คือ "ตัวคั่น" — ใช้ตัวอะไรก็ได้ที่ไม่มีในข้อความ
# แล้วปิดท้ายด้วยตัวเดียวกัน2.7Config IP Address ให้ 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ของจริงสองตัวในการทดลอง — ชื่อ interface ต่างกันเพราะเป็น router คนละรุ่น
Router#configure terminal
Router(config)#interface FastEthernet 0/1
Router(config-if)#ip address 192.3.128.1 255.255.255.0
Router(config-if)#no shutdownRouter#configure terminal
Router(config)#interface GigabitEthernet 0/0/1
Router(config-if)#ip address 194.3.128.1 255.255.255.0
Router(config-if)#no shutdownใบแลปมีหมายเหตุไว้เองว่า "พยายามดูชื่อและหมายเลข Port เองด้วยเพื่อป้องกันความผิดพลาดจากรายงานนี้" — อย่าเดา ให้ show running-config (หรือ show ip interface brief) ดูชื่อจริงก่อนเสมอ เพราะ 1841 ใช้ FastEthernet 0/0–0/1 ส่วน 4321 ใช้ GigabitEthernet 0/0/0–0/0/1 · เสียบสายเข้าช่องไหน ต้อง config ช่องนั้น
2.8Serial Interface — DCE / DTE, clock rate, bandwidth
โจทย์เขียนว่า "router อย่างน้อย 2 ตัว เชื่อมต่อกันผ่าน Serial Interface" · คนที่ทำข้อนี้ไม่ได้ ส่วนใหญ่ไม่ได้ตกที่ IP หรือ RIP แต่ตกที่ Serial link ไม่ขึ้น เพราะลืม clock rate ที่ฝั่ง DCE
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 shutdownDCE กับ DTE ต่างกันอย่างไร
DCE — Data Communications Equipment
ฝั่งที่จ่ายสัญญาณนาฬิกา (clock) ให้กับลิงก์ · เปรียบเหมือนคนตีกลองให้จังหวะ · ต้องสั่ง clock rate ที่ฝั่งนี้เท่านั้น เพราะเป็นตัวกำหนดความเร็วจริงของสาย
DTE — Data Terminal Equipment
ฝั่งที่รับสัญญาณนาฬิกามาใช้ · เดินตามจังหวะที่ DCE ตีให้ · ตั้ง clock rate ไปก็ไม่มีผล — IOS บางรุ่นจะขึ้นเตือนว่า This command applies only to DCE interfaces
ใครเป็น DCE ตัดสินจากสาย ไม่ใช่จากตัว router — สายซีเรียล (เช่น V.35) มีปลายสองแบบต่างกัน ปลายที่เป็น DCE เสียบเข้าที่ router ตัวไหน ตัวนั้นก็กลายเป็น DCE ของลิงก์นั้น · ใน GNS3 ฝั่งที่เราคลิกเป็นตัวแรกตอนลากสายจะกลายเป็น DCE
หาว่าใครเป็น DCE ด้วย show controllers
ใบแลปไม่ได้เขียนคำสั่งนี้ไว้ แต่มันคือคำสั่งเดียวที่บอกได้ว่าใครเป็น DCE โดยไม่ต้องเดินไปดูสาย
LAB-B#show controllers Serial0/1/1
# Interface Serial0/1/1
# Hardware is ...
V.35 DCE cable, clock rate 56000
# └── มีคำว่า DCE = ฝั่งนี้ต้องตั้ง clock rateLAB-A#show controllers Serial0/1/0
# Interface Serial0/1/0
V.35 DTE cable
# └── มีคำว่า DTE = ฝั่งนี้ไม่ต้องตั้ง clock rateอาการเวลาลืมตั้ง clock rate
Serial0/1/0 is up, line protocol is down
# └─ ชั้นกายภาพ OK └─ ชั้นลิงก์ไม่ขึ้น = ไม่มีนาฬิกาเดิน
Internet address is 193.3.128.1/24
MTU 1500 bytes, BW 56 Kbit/sec, DLY 20000 usec| สิ่งที่เห็น | แปลว่าอะไร | แก้ยังไง |
|---|---|---|
up / up | เรียบร้อย ใช้งานได้ | ไม่ต้องทำอะไร |
up / down | สายเสียบอยู่ แต่ไม่มีสัญญาณนาฬิกา — ฝั่ง DCE ยังไม่ได้ตั้ง clock rate | show controllers หาฝั่ง DCE → เข้าไป clock rate 56000 |
down / down | ชั้นกายภาพไม่ขึ้นเลย — สายหลุด, สายเสีย, หรืออีกฝั่ง shutdown อยู่ | เช็กสาย · เข้าไป no shutdown ที่อีกฝั่ง |
administratively down / down | ลืม no shutdown ที่ฝั่งตัวเอง | interface Serial… → no shutdown |
Serial ไม่เหมือน Ethernet — Ethernet สองฝั่งมี clock ในตัวเอง เสียบสายก็ขึ้นเลย แต่ Serial ต้องมีคนหนึ่งจ่ายนาฬิกาให้อีกคน ถ้าไม่มีใครจ่าย บิตจะไม่รู้จะเริ่มนับเมื่อไหร่ ลิงก์จึงไม่ขึ้น
ผลลูกโซ่: line protocol is down → show ip route จะไม่มีแถวของวง Serial เลย → RIP ไม่ส่ง update ออกทางสายนั้น → PC ข้ามฝั่ง ping ไม่ถึง · คนมักไปนั่งแก้ที่ RIP ทั้งที่ต้นเหตุอยู่ที่ clock rate
ของจริงในการทดลอง
Router>enable
Router#configure terminal
Router(config)#interface Serial0/1/0
Router(config-if)#ip address 193.3.128.1 255.255.255.0
Router(config-if)#bandwidth 56
Router(config-if)#no shutdownRouter>enable
Router#configure terminal
Router(config)#interface Serial0/1/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ใบแลปให้ LAB-A ใส่แค่ bandwidth 56 แต่ LAB-B ใส่ทั้ง bandwidth 56 และ clock rate 56000 — ไม่ใช่ความบังเอิญ แปลว่าในชุดอุปกรณ์ของห้องแลป ปลาย DCE ของสายเสียบอยู่ที่ LAB-B · ถ้าห้องสอบสลับสาย ตำแหน่ง DCE ก็ย้าย ให้ show controllers เช็กเองทุกครั้ง อย่าจำตาม
bandwidth ต่างจาก clock rate อย่างไร
bandwidth 56 | clock rate 56000 | |
|---|---|---|
| หน่วย | kbps → 56 kbps | bps → 56000 bps = 56 kbps (ค่าเท่ากัน คนละหน่วย) |
| เปลี่ยนความเร็วจริงไหม | ไม่ — เป็นแค่ตัวเลขที่เขียนใส่ config | ใช่ — เป็นความเร็วที่บิตวิ่งจริงบนสาย |
| มีไว้ทำไม | ให้ routing protocol ใช้คำนวณ metric และให้ show interfaces รายงาน BW 56 Kbit/sec | ให้ฝั่ง DTE รู้จังหวะว่าเมื่อไหร่คือ 1 บิต — ไม่มีอันนี้ ลิงก์ไม่ขึ้น |
| ตั้งที่ฝั่งไหน | ตั้งทั้งสองฝั่ง (ควรตั้งให้ตรงกัน) | ฝั่ง DCE เท่านั้น |
| ถ้าลืม | ลิงก์ยังทำงานปกติ แค่ metric อาจเพี้ยน | ลิงก์ไม่ขึ้น — line protocol is down |
2.9ตรวจสอบและบันทึก config (Listing 6)
Router#show interfaces # แสดงค่าทางสถิติของทุกอินเทอร์เฟซ
Router#show running-config # แสดงค่าการติดตั้งที่อยู่ใน RAMใบแลปพูดถึงแค่ running-config แต่ค่าที่อยู่ใน RAM จะหายทั้งหมดเมื่อปิดเครื่อง — ถ้าต้องส่งงานหรือทำต่อวันหลัง ต้องบันทึกลง NVRAM ด้วย
Router#show running-config # ค่าที่ใช้อยู่ตอนนี้ (RAM) — หายเมื่อปิดเครื่อง
Router#show startup-config # ค่าที่จะโหลดตอนบูต (NVRAM) — ไม่หาย
Router#copy running-config startup-config
# Destination filename [startup-config]? ← กด Enter ผ่านไป
# Building configuration... [OK]
Router#copy run start # แบบย่อ พิมพ์เร็วกว่า ทำงานเหมือนกัน
Router#write memory # คำสั่งเก่า ทำงานเหมือนกัน| running-config | startup-config | |
|---|---|---|
| เก็บที่ไหน | RAM | NVRAM |
| ปิดเครื่องแล้ว | หายหมด | ยังอยู่ |
| คือค่าอะไร | ค่าที่กำลังใช้งาน ณ ตอนนี้ — ทุกบรรทัดที่เราพิมพ์มีผลทันทีที่กด Enter | ค่าที่จะถูกโหลดมาใช้ตอนบูตครั้งหน้า |
| ข้อสอบขออันไหน | show running-config — ข้อ 1 ปีที่แล้วสั่งส่งอันนี้ | — |
Cisco IOS ไม่มีปุ่ม Save — คำสั่งมีผลทันทีที่กด Enter (ใน running-config) แต่ไม่ได้ถูกบันทึกอัตโนมัติ ถ้าอุปกรณ์ถูกปิดหรือ reload ระหว่างทาง งานที่ทำมาทั้งชั่วโมงหายหมด · พิมพ์ copy run start ทุกครั้งที่ทำอะไรสำคัญเสร็จ
2.10show mac-address-table และ show arp
ใบแลป Lab 2 มีแต่ arp -a ที่รันบน PC (ข้อ 14) ส่วน show mac-address-table และ show arp ที่รันบนอุปกรณ์ Cisco ไม่ได้อยู่ในใบแลป — แต่ ข้อสอบข้อ 1 ปีที่แล้วสั่งให้ส่งทั้งคู่ จึงต้องรู้ไว้
Switch เรียนรู้ MAC address ได้อย่างไร
Switch#show mac-address-table
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
1 00aa.0000.0001 DYNAMIC Gi1/0/1
1 00bb.0000.0002 DYNAMIC Gi1/0/2
1 00cc.0000.0003 DYNAMIC Gi1/0/3
# └── เรียนรู้เองจาก source MAC ของเฟรมที่วิ่งเข้ามา (DYNAMIC)LAB-A#show arp
Protocol Address Age (min) Hardware Addr Type Interface
Internet 192.3.128.1 - 00aa.1111.0001 ARPA FastEthernet0/1
Internet 192.3.128.2 3 00aa.0000.0001 ARPA FastEthernet0/1
Internet 192.3.128.3 5 00bb.0000.0002 ARPA FastEthernet0/1
# └── router จำคู่ IP ↔ MAC ของเครื่องในวงเดียวกันไว้
# Age = "-" หมายถึงเป็น IP ของตัว router เอง ไม่มีวันหมดอายุ| MAC address table | ARP table | |
|---|---|---|
| อยู่บนอุปกรณ์อะไร | Switch (เลเยอร์ 2) | Router / PC (เลเยอร์ 3) |
| จับคู่อะไรกับอะไร | MAC ↔ พอร์ต | IP ↔ MAC |
| ตอบคำถามอะไร | "เครื่องที่มี MAC นี้เสียบอยู่พอร์ตไหน" | "เครื่องที่มี IP นี้ มี MAC อะไร" |
| ได้ข้อมูลมาจากไหน | อ่าน source MAC ของทุกเฟรมที่วิ่งเข้ามา — ไม่ต้องถามใคร | ต้องส่ง ARP Request แบบ broadcast ไปถาม แล้วรอ ARP Reply |
| คำสั่ง | show mac-address-table | show arp (บนอุปกรณ์) · arp -a (บน PC/Mac) |
2.11การทดลองและการดักจับด้วย Wireshark
① "ทำการปิด Wi-Fi และปิด Firewall ก่อนเริ่มทำการทดลอง และฟังรายละเอียดในการเปลี่ยน IP Address ของตัวเครื่อง (PC) เมื่อทำการทดลองเสร็จแล้วให้กลับไปเปิดได้ตามปกติ"
② "พยายามดูชื่อและหมายเลข Port เองด้วยเพื่อป้องกันความผิดพลาดจากรายงานนี้"
อุปกรณ์ที่ต้องใช้ (ตามใบแลปข้อ 1)
| อุปกรณ์ | รุ่น | ใช้ทำอะไร |
|---|---|---|
| Router LAB-A | Cisco 1841 | ฝั่งซ้าย — FastEthernet 0/1 ต่อ LAN, Serial0/1/0 ต่อไป LAB-B |
| Router LAB-B | Cisco 4321 | ฝั่งขวา — GigabitEthernet 0/0/1 ต่อ LAN, Serial0/1/1 ต่อมา LAB-A |
| Switch ฝั่งซ้าย | Cisco 3650 | ต่อกับ PC1, PC2 และเครื่องที่รัน Wireshark — ตัวนี้ต้องตั้ง port mirroring |
| Switch ฝั่งขวา | Cisco 2950 | ต่อกับ PC3 และ PC4 |
ใบแลประบุว่า "การเชื่อมต่อผ่านพอร์ต Gigabit Ethernet, Fast Ethernet หรือ Serial ให้พิจารณาและอ้างอิงตามที่แสดงในรูปที่ 32"
โทโพโลยีที่ต้องสร้าง (รูปที่ 31 และ 32 ในใบแลป)
Gi1/0/13 ไม่ได้แทรกอยู่ระหว่าง PC กับ switch — มันเห็นทราฟฟิกได้เพราะ monitor session เท่านั้น
Gi1/0/13 ที่เป็น destination ของการมิเรอร์ สำหรับเสียบเครื่องที่รัน Wiresharkต่ออะไรเข้าพอร์ตไหน — ไล่ตามรูปที่ 31–32 ทีละเส้น
| เส้น | ปลายที่ 1 | ปลายที่ 2 | ชนิดสาย | วง IP |
|---|---|---|---|---|
| ① | LAB-A (Cisco 1841) · Serial0/1/0 ป้าย S0/1/0 | LAB-B (Cisco 4321) · Serial0/1/1 ป้าย S0/1/1 | Serial (เส้นแดงในรูป 32) | 193.3.128.0/24 |
| ② | LAB-A · FastEthernet0/1 ป้าย FE0/1 | Switch 3650 · พอร์ต Gigabit ที่ว่างอยู่ | Ethernet (เส้นฟ้าในรูป 32) | 192.3.128.0/24 |
| ③ | Switch 3650 · GigabitEthernet1/0/1 | PC1 = 192.3.128.2 | Ethernet (กรอบเหลือง · source) | |
| ④ | Switch 3650 · GigabitEthernet1/0/3 | PC2 = 192.3.128.3 | Ethernet (กรอบเหลือง · source) | |
| ⑤ | Switch 3650 · GigabitEthernet1/0/13 | เครื่องที่รัน Wireshark (MacBook + USB-C Ethernet) | Ethernet (กรอบเขียว · destination) | |
| ⑥ | LAB-B · GigabitEthernet0/0/1 ป้าย GE0/0/1 | Switch 2950 · พอร์ตที่ว่างอยู่ | Ethernet (เส้นฟ้าในรูป 32) | 194.3.128.0/24 |
| ⑦ | Switch 2950 · FastEthernet0/1 | PC3 = 194.3.128.2 | Ethernet | |
| ⑧ | Switch 2950 · FastEthernet0/2 | PC4 = 194.3.128.3 | Ethernet |
ใบแลปเตือนไว้เองว่า "พยายามดูชื่อและหมายเลข Port เองด้วยเพื่อป้องกันความผิดพลาดจากรายงานนี้" — สิ่งที่ต้องยึดจากรูปที่ 31–32 คือ "โครงสร้าง" ไม่ใช่ "ตัวเลข" คือ router 2 ตัวต่อกันด้วย Serial · แต่ละตัวห้อย switch หนึ่งตัว · ฝั่งซ้ายมี PC 2 เครื่องกับเครื่อง Wireshark ฝั่งขวามี PC 2 เครื่อง · ส่วนเลขพอร์ตจริงต้องดูที่ตัวเครื่องและยืนยันด้วย show ip interface brief แล้วเอาเลขจริงไปใส่ทั้งในคำสั่ง interface และในคำสั่ง monitor session ไม่งั้นมิเรอร์ผิดพอร์ตแล้ว Wireshark จะเงียบ
ลำดับการทดลอง
- สร้าง Topology ตามรูปที่ 31 แล้วต่อสายตามรูปที่ 32
- ติดตั้ง IP ให้อุปกรณ์ตามตารางที่ 1 (ค่าที่แทน x = 3, y = 128 แล้วอยู่ที่ §2.1)
- Config IP ให้ PC1 และ PC2 ตรวจว่า ping หากันได้ แล้วตั้ง monitor สำหรับ Wireshark
[Switch 3650 Console] — Port Mirroring (Listing 7 + ใบแลปข้อ 3)
Switch#configure terminal Switch(config)#monitor session 1 source Interface GigabitEthernet1/0/1 , GigabitEthernet1/0/3 both Switch(config)#monitor session 1 destination interface GigabitEthernet1/0/13ส่วนของคำสั่ง หมายความว่า monitor session 1เลขที่ของ session การมิเรอร์ (มีได้หลาย session) source Interface Gi1/0/1 , Gi1/0/3พอร์ตที่จะถูกก๊อป — คือพอร์ตที่ PC1 กับ PC2 เสียบอยู่ bothก๊อปทั้งทราฟฟิกขาเข้าและขาออกของพอร์ตนั้น destination interface Gi1/0/13พอร์ตที่จะได้รับสำเนา — เสียบเครื่องที่รัน Wireshark ไว้ที่นี่ ทำไมต้องมิเรอร์Switch ส่งเฟรมเฉพาะไปยังพอร์ตปลายทาง (ต่างจาก hub ที่กระจายทุกพอร์ต) — ถ้าเสียบ MacBook เข้าไปเฉย ๆ จะไม่เห็นทราฟฟิกระหว่าง PC1 กับ PC2 เลย เพราะเฟรมไม่ได้วิ่งมาที่พอร์ตของเรา ·
monitor sessionคือคำสั่งที่สั่งให้ switch ทำสำเนาส่งมาให้ - Config IP ให้ PC3 และ PC4 ตรวจว่า ping หากันได้ (คู่นี้อยู่วง
194.3.128.0/24เหมือนกัน) - Config FastEthernet ของ LAB-A แล้วตรวจว่า PC1 และ PC2 ping ไปหา router ได้ → คำสั่งอยู่ที่ §2.7
- Config GigabitEthernet ของ LAB-B แล้วตรวจว่า PC3 และ PC4 ping ไปหา router ได้
- Config Serial ของ LAB-A (
Serial0/1/0=193.3.128.1·bandwidth 56) → §2.8 - Config Serial ของ LAB-B (
Serial0/1/1=193.3.128.2·bandwidth 56·clock rate 56000) - ping จาก PC1 ไป PC3 และจาก PC4 ไป PC2 — ยังไม่ผ่าน ให้อธิบายสาเหตุ
[PC1] และ [PC4]
PC1> ping 194.3.128.2 PC4> ping 192.3.128.3คำตอบที่ต้องเขียนping ไม่ผ่านเพราะ router ทั้งสองตัวยังไม่รู้จักวงของอีกฝั่ง — LAB-A มีแค่
192.3.128.0/24กับ193.3.128.0/24ในตาราง ไม่เคยได้ยินชื่อ194.3.128.0/24พอเจอปลายทางที่ไม่มีในตารางก็ทิ้งแพ็กเก็ตทิ้ง · ยังไม่ได้ทำ routing นั่นเอง — ซึ่งคือขั้นตอนถัดไป - ทำ RIP บน LAB-A
[LAB-A Console] — ใบแลปข้อ 11
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)#end - ทำ RIP บน LAB-B
[LAB-B Console] — ใบแลปข้อ 12
Router#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)#end - ping ใหม่อีกครั้ง แล้วสังเกตและอธิบายสิ่งที่เกิดขึ้น
คำตอบที่ต้องเขียน
คราวนี้ผ่าน เพราะ RIP ส่ง update (ห่อใน UDP port 520) ข้ามสาย Serial ทำให้ LAB-A ได้แถว
R 194.3.128.0/24และ LAB-B ได้แถวR 192.3.128.0/24ในตาราง routing · ping ครั้งแรกอาจ timeout เพราะเสียเวลาไปกับ ARP และรอ RIP update รอบแรก ครั้งถัดไปจะเร็วขึ้น · ค่า TTL ที่กลับมาจะลดลง 2 เพราะเดินผ่าน router 2 ตัว - เลือก PC ตัวใดตัวหนึ่งแล้วใช้คำสั่ง
arp -aพร้อมอธิบายสิ่งที่เกิดขึ้น[macOS Terminal] — เครื่องเราคือ PC1$ arp -a # ? (192.3.128.1) at 0:aa:11:11:0:1 on en5 ifscope [ethernet] # ? (192.3.128.3) at 0:bb:0:0:0:2 on en5 ifscope [ethernet]คำตอบที่ต้องเขียนตาราง ARP เก็บ คู่ IP ↔ MAC ของเครื่องที่อยู่ใน subnet เดียวกันเท่านั้น — จะเห็น
192.3.128.1(gateway) และ192.3.128.3(PC2) แต่จะไม่เห็น194.3.128.2ถึงแม้จะเพิ่ง ping ไปสำเร็จ เพราะ ARP ไม่ข้าม router — เวลาส่งข้ามวง เครื่องเราใช้ MAC ของgateway ไม่ใช่ MAC ของปลายทาง ยืนยันหลักการที่ว่า MAC address เปลี่ยนทุก hop แต่ IP address ไม่เปลี่ยนตลอดทาง - ดักจับด้วย Wireshark — เลือก interface ที่เสียบอยู่กับพอร์ต
Gi1/0/13แล้ว ping ใหม่ · ใส่ filter[Wireshark] — display filter ที่ข้อสอบข้อ 2 สั่งip.src == 192.3.128.2 # เฉพาะแพ็กเก็ตที่ออกจาก PC1 icmp # เฉพาะ ping (Echo request / Echo reply) arp # เฉพาะ ARP (Who has … / … is at …) udp.port == 520 # เฉพาะ RIP update — พิสูจน์ว่า RIP ทำงานจริง
2.12จุดที่ Mac ต่างจากที่ใบแลปเขียนไว้
| เรื่อง | ใบแลปเขียนไว้ (Windows) | ของ Mac ต้องทำแบบนี้ |
|---|---|---|
| Wireshark | โหลดจาก wireshark.org แล้วกด Next จนจบ | เลือกรุ่น Arm (M1 ขึ้นไป) และต้องติดตั้ง ChmodBPF.pkg ด้วย — ใบแลปมีหัวข้อนี้เขียนไว้เองแล้ว |
| โปรแกรมต่อ console | ลง PuTTY → ใส่ IP หรือ port → เลือก connection type = Serial | ไม่มี PuTTY บน macOS → ใช้ screen ที่ติดมากับเครื่อง |
| หาชื่อพอร์ต console | เปิด Device Manager ดูว่าเป็น COM3, COM4, … | ls /dev/tty.* → ได้ /dev/tty.usbmodem1301 |
| เปิด console | กด Open ในหน้าต่าง PuTTY | screen /dev/tty.usbmodem1301 9600 |
| ปิด / กลับเข้า console | ปิดหน้าต่าง PuTTY แล้วเปิดใหม่ | ถอย Ctrl+A Ctrl+\ · ดู screen -ls · กลับเข้า screen -r <id> · ปิด screen -X -S <id> quit |
| ตั้ง IP ของเครื่อง | Control Panel → View by large icon → Network and Sharing Center → Change adapter settings → คลิกขวาที่ Ethernet → Properties → เลือก IPv4 → Properties → Use the following IP address แล้วกรอกตามเอกสาร Lab | System Settings → Network → คลิกการ์ด (USB-C Ethernet) → Details… → TCP/IP → Configure IPv4 = Manually → กรอก IP Address / Subnet Mask / Router |
| ปิด Firewall | Control Panel → Windows Defender Firewall → Turn Windows Defender Firewall on or off → Turn off | System Settings → Network → Firewall → ปิดสวิตช์ (เปิดคืนหลังทำแลปเสร็จ) |
| ปิด Wi-Fi | ปิดจากหน้า Network Connections | คลิกไอคอน Wi-Fi บนแถบเมนู → สลับปิด |
| พอร์ต Ethernet | โน้ตบุ๊ก Windows ส่วนใหญ่มีช่อง RJ-45 ในตัว | MacBook Air M2 ไม่มีช่อง Ethernet → ต้องใช้ USB-C → Ethernet adapter · ชื่อการ์ดจะเป็น en5, en6 แล้วแต่เครื่อง |
| ดู ARP cache | arp -a ใน Command Prompt | arp -a ใน Terminal (เหมือนกัน) · รูปแบบผลลัพธ์ต่างเล็กน้อย — macOS แสดง on en5 ifscope ต่อท้าย |
| ตัวแปลง console | เสียบ USB-A ได้ตรง ๆ | MacBook Air M2 มีแต่ USB-C → ต้องมีตัวแปลง USB-A → USB-C หรือ hub · เตรียมไปด้วยทุกครั้ง |
ตั้ง IP Address ของ Mac — ทีละหน้าจอ (รูปที่ 19–21 ในใบแลป)
ใบแลปมีหัวข้อ "4. การตั้งค่า IP Address ของ Mac" เขียนไว้ให้แล้ว พร้อมรูปหน้าจอ macOS จริง — ทำตามสามรูปนี้ได้เลย ไม่ต้องแปลงจากขั้นตอน Windows เอง
Firewall ต้องขึ้น Inactive (ถ้าขึ้น Active ให้กดเข้าไปปิดก่อน) ② Wi-Fi ต้องปิดตอนทำแลป ③ การ์ด USB-C Ethernet ของเราคือแถว USB 10/100/1000 LAN ใต้หัวข้อ Other Services (ชื่ออาจต่างกันตามยี่ห้อ adapter)
USB 10/100/1000 LAN แล้วกดปุ่ม Details… (กรอบแดง) — ปุ่มนี้คือจุดที่คนหาไม่เจอบ่อยที่สุด เพราะมันอยู่ชิดขอบขวาของแถว ไม่ใช่ในเมนู
Configure IPv4 เป็น Manually แล้วสามช่องล่างจะกรอกได้ · สำหรับการทดลองนี้ถ้าเครื่องเราเป็น PC1 ให้กรอก IP address = 192.3.128.2 · Subnet mask = 255.255.255.0 · Router = 192.3.128.1 แล้วกด OK (ช่อง Router ของ macOS = "Default gateway" ที่ใบแลปพูดถึง — ห้ามเว้นว่าง ไม่งั้น ping ข้ามฝั่งไม่ผ่าน) · ทำแลปเสร็จอย่าลืมเปลี่ยนกลับเป็น Using DHCPขั้นตอนเดียวกันของฝั่ง Windows ในใบแลป (รูปที่ 9–18) — บน Mac ทำตามนี้ไม่ได้
รูปที่ 9–18 ในใบแลปคือการตั้ง IP และปิด Firewall ผ่าน Control Panel ของ Windows · macOS ไม่มี Control Panel, ไม่มี Network and Sharing Center, ไม่มี Change adapter settings และไม่มี Windows Defender Firewall — บน MacBook Air M2 ทุกอย่างอยู่ใน System Settings → Network ตามรูปที่ 19–21 ด้านบน · ห้ามไล่หาเมนูตามรูปเหล่านี้บนเครื่องตัวเอง เอาไว้ดูเวลาช่วยเพื่อนที่ใช้ Windows เท่านั้น
ตั้ง IP Address (รูปที่ 9–15)
Configure IPv4 = Manually ของ Mac ในรูปที่ 21 (Default gateway ของ Windows = ช่อง Router ของ macOS)ปิด Firewall (รูปที่ 16–18)
Inactive ในรูปที่ 192.13เช็คว่าทำถูกไหม
| คำสั่ง | ต้องได้ผลอะไร |
|---|---|
show ip interface brief ส่วนขยาย | ทุกใบที่ตั้ง IP ต้องเป็น up / up · ถ้า Serial เป็น up / down = ลืม clock rate |
show interfaces | ท่อนของ Serial ต้องขึ้น BW 56 Kbit/sec และ line protocol is up |
show controllers Serial0/1/1 ส่วนขยาย | บอกว่าฝั่งนี้เป็น DCE หรือ DTE — ฝั่ง DCE ต้องมี clock rate |
show running-config | ต้องเห็น hostname LAB-A, enable secret, บล็อก line con 0 / line vty 0 4, ip address ของทุกใบ และบล็อก router rip ครบ (ข้อสอบสั่งส่งอันนี้) |
show mac-address-table ส่วนขยาย | บน switch ต้องเห็น MAC ของทุก PC ที่เคยส่งทราฟฟิก พร้อมพอร์ตที่มันเสียบอยู่ (ข้อสอบสั่งส่งอันนี้) |
show arp ส่วนขยาย | บน router ต้องเห็นคู่ IP ↔ MAC ของ PC ในวงเดียวกัน (ข้อสอบสั่งส่งอันนี้) |
ping จาก PC | PC1 → PC2 ผ่าน (ttl=64 ไม่ผ่าน router) · PC1 → PC3 ผ่านหลังทำ RIP โดย TTL ลดลง 2 |
Interface IP-Address OK? Method Status Protocol
FastEthernet0/0 unassigned YES unset administratively down down
FastEthernet0/1 192.3.128.1 YES manual up up
Serial0/1/0 193.3.128.1 YES manual up up
# └── สองคอลัมน์นี้ต้องเป็น up ทั้งคู่2.14ถ้าไม่ผ่าน ให้ไล่ตามนี้
| อาการ | สาเหตุ | คำสั่งแก้ |
|---|---|---|
| ต่อสาย console แล้วหน้าจอไม่มีอะไรเลย | ยังไม่ได้กด Enter · หรือเสียบผิดช่อง (ไปเข้าช่อง Ethernet) · หรือมี screen ค้าง | กด Enter 2–3 ครั้ง · ดูป้าย CONSOLE ข้างช่อง · screen -ls แล้ว screen -X -S <id> quit |
| หน้าจอมีแต่ตัวอักษรขยะ | ความเร็ว (baud rate) ไม่ตรง | ออกแล้วเปิดใหม่ด้วย screen /dev/tty.usbmodemXXXX 9600 |
ls /dev/tty.* ไม่เห็นอุปกรณ์ | ตัวแปลง USB ไม่ถูกจับ หรือขาด hub USB-C | ถอดเสียบใหม่ · ลองพอร์ตอื่น · เช็กว่ามีตัวแปลง USB-A → USB-C |
พิมพ์คำสั่งแล้วขึ้น % Invalid input detected | อยู่ผิดโหมด หรือพิมพ์ชื่อคำสั่งยาวเกิน (เช่น show running-configuration) | ดู prompt ก่อนว่าเป็น >, #, (config)# หรือ (config-if)# → §2.5 · ใช้ show running-config |
ตั้ง IP แล้ว ping ไม่ผ่าน · administratively down | ลืม no shutdown | interface <ชื่อ> → no shutdown |
Serial ขึ้น up / down | ฝั่ง DCE ยังไม่ได้ตั้ง clock rate | show controllers Serial0/1/1 หา DCE → clock rate 56000 → §2.8 |
| PC1 ping PC3 ไม่ได้ ทั้งที่ Serial ขึ้น up/up | ยังไม่ได้ทำ RIP หรือลืมประกาศ network 193.3.128.0 | show ip route ต้องมีแถวขึ้นต้นด้วย R · ถ้าไม่มี → เพิ่ม network ของวง Serial ทั้งสองตัว |
| เพื่อน ping เครื่องเราไม่ได้ แต่เรา ping เขาได้ | Firewall ของ macOS ยังเปิดอยู่ | System Settings → Network → Firewall → ปิด |
| Wireshark ไม่เห็นทราฟฟิกของ PC อื่นเลย | ยังไม่ได้ตั้ง port mirroring — switch ส่งเฟรมเฉพาะไปพอร์ตปลายทาง | ตั้ง monitor session 1 source … destination … แล้วเสียบเครื่องเราที่พอร์ต destination |
| Wireshark ไม่มี interface ให้เลือก | ยังไม่ได้ลง ChmodBPF.pkg | ลง ChmodBPF.pkg → logout/login → id -Gn | grep access_bpf |
| ping ออกไปวิ่งผิดทาง ผลไม่นิ่ง | ยังไม่ได้ปิด Wi-Fi จึงมีสองเส้นทางออก | ปิด Wi-Fi ให้เหลือแต่การ์ด USB-C Ethernet |
| ทำ config มาทั้งชั่วโมง แล้วอุปกรณ์ถูก reload — หายหมด | ไม่ได้บันทึกลง NVRAM | copy run start ทุกครั้งที่ทำอะไรสำคัญเสร็จ → §2.9 |
2.15คำถามท้ายการทดลอง
"ให้นักศึกษาใช้คำสั่ง show Interface ทุกอุปกรณ์ และอธิบายว่าแต่ละอุปกรณ์มี Interface อะไรบ้าง แต่ละ Interface คืออะไร"
แนวคำตอบ — interface ของอุปกรณ์ทั้ง 4 ตัวในการทดลอง
รันคำสั่งนี้ที่ทุกอุปกรณ์ แล้วจดชื่อ interface ที่พบ
Router#show interfaces
Router#show ip interface brief # ส่วนขยาย — อ่านง่ายกว่ามาก ใช้จดชื่อ| อุปกรณ์ | Interface ที่พบ | คืออะไร |
|---|---|---|
| LAB-A Cisco 1841 | FastEthernet0/0, FastEthernet0/1 | Fast Ethernet 100 Mbps — พอร์ต LAN ต่อไปหา switch ฝั่งซ้าย · ในแลปนี้ใช้ 0/1 = 192.3.128.1 |
Serial0/1/0 (และ 0/1/1 ถ้ามีการ์ด) | Serial แบบซิงโครนัส — ต่อระหว่าง router ระยะไกล ต้องมี bandwidth และฝั่ง DCE ต้องมี clock rate · ในแลปนี้ = 193.3.128.1 | |
| LAB-B Cisco 4321 | GigabitEthernet0/0/0, GigabitEthernet0/0/1 | Gigabit Ethernet 1 Gbps — พอร์ต LAN ของ router รุ่นใหม่ · ในแลปนี้ใช้ 0/0/1 = 194.3.128.1 สังเกตว่าเลขมี 3 ท่อน ต่างจาก 1841 ที่มี 2 ท่อน |
Serial0/1/1 | Serial ฝั่งที่เป็น DCE ในการทดลองนี้ (จึงต้องมี clock rate 56000) = 193.3.128.2 | |
| Switch 3650 | GigabitEthernet1/0/1 … 1/0/24 + Vlan1 | พอร์ต Gigabit Ethernet ต่อกับ PC1, PC2 และเครื่องที่รัน Wireshark · Vlan1 เป็นอินเทอร์เฟซเสมือนไว้ใส่ IP สำหรับจัดการตัวสวิตช์เอง ไม่ใช่พอร์ตจริง |
| Switch 2950 | FastEthernet0/1 … 0/24 + Vlan1 | พอร์ต Fast Ethernet ต่อกับ PC3 และ PC4 · เป็นสวิตช์รุ่นเก่ากว่า จึงเป็น 100 Mbps ไม่ใช่ Gigabit |
ประเด็นที่ควรเขียนสรุปในรายงาน
- ชื่อ interface บอกทั้งความเร็วและตำแหน่ง —
FastEthernet= 100 Mbps,GigabitEthernet= 1 Gbps,Serial= ลิงก์ WAN แบบซิงโครนัส - จำนวนท่อนของตัวเลขต่างกันตามรุ่น — 1841 ใช้
slot/port(2 ท่อน) ส่วน 4321 และ 3650 ใช้slot/subslot/port(3 ท่อน) จึงห้ามเดา ต้องดูของจริง - Switch ไม่มี interface สำหรับ routing — พอร์ตทุกอันเป็นเลเยอร์ 2 ส่วน
Vlan1เป็นอินเทอร์เฟซเสมือนไว้ใส่ IP สำหรับจัดการ (ตรงกับที่ใบแลปอธิบายเรื่อง MGMT Port ว่า "สามารถกำหนด IP ที่switch:prompt ได้เลย") - Serial ต่างจาก Ethernet ตรงที่ต้องมีคนจ่ายนาฬิกา —
show interfacesของ Serial จะรายงานBW 56 Kbit/secตามที่ตั้งbandwidthไว้ และจะเป็นup/upก็ต่อเมื่อฝั่ง DCE ตั้งclock rateแล้วเท่านั้น
2.16ถ้าออกสอบ ต้องทำอะไรได้บ้าง
"สร้าง network ที่มี router อย่างน้อย 2 ตัวเชื่อมต่อกันผ่าน Serial ทุก router มี switch และทุก switch มี PC อย่างน้อย 1 ตัว ให้ทุก PC ping หากันได้ · IP ใช้เลขจากรหัสนักศึกษา · ส่ง show running-config, show mac-address-table, show arp"
เช็กลิสต์สำหรับห้องสอบ — ทำตามลำดับนี้
- วาดผังและเขียนตาราง IP ลงกระดาษก่อน —
192.3.128.0/24ฝั่งซ้าย ·193.3.128.0/24สาย Serial ·194.3.128.0/24ฝั่งขวา - ต่อ console เข้าอุปกรณ์ตัวแรก —
ls /dev/tty.*แล้วscreen … 9600 - ตั้ง hostname และรหัสผ่านครบ 4 ช่อง ตามตาราง (อย่าลืม
loginต่อท้ายpassword) → §2.6 - ตั้ง IP ให้ Ethernet ของทุก router +
no shutdown - ตั้ง Serial ทั้งสองฝั่ง — IP +
bandwidth 56+clock rate 56000ที่ฝั่ง DCE แล้วยืนยันว่าเป็นup / upก่อนไปต่อ - เปิด RIP ทุก router ประกาศทุกวงที่ต่ออยู่ รวมวงของ Serial
- ตั้ง IP + gateway ให้ PC ทุกตัว แล้ว ping ให้ครบทุกคู่
- เก็บผลส่ง 3 อย่าง —
show running-config(ทุก router และ switch) ·show mac-address-table(ที่ switch) ·show arp(ที่ router) copy run startก่อนลุกจากเครื่อง
2.17เช็คความเข้าใจ
no shutdown ครบ สายเสียบแน่น แต่ show ip interface brief ขึ้นว่า Serial เป็น up / down — ควรทำอะไรเป็นอย่างแรกbandwidth 56 ที่ทั้งสองฝั่ง เพราะ IOS ต้องรู้ความเร็วก่อนถึงจะเปิดลิงก์router rip ก่อน แล้วลิงก์จะขึ้นเองshow controllers หาว่าฝั่งไหนเป็น DCE แล้วใส่ clock rate 56000 ที่ฝั่งนั้นup / down แปลว่า ชั้นกายภาพ OK แต่ชั้นลิงก์ไม่ขึ้น — สำหรับ Serial สาเหตุอันดับหนึ่งคือไม่มีสัญญาณนาฬิกา เพราะฝั่ง DCE ยังไม่ได้ตั้ง clock rate · bandwidth เป็นแค่ตัวเลขให้ routing protocol ใช้ ไม่มีผลกับสถานะลิงก์ · และ RIP จะทำงานไม่ได้เลยตราบใดที่ลิงก์ยังไม่ขึ้น เพราะไม่มีทางส่ง update ออกไป192.3.128.2) เพิ่ง ping ไปที่ PC3 (194.3.128.2) สำเร็จ ผ่าน router สองตัว แล้วรัน arp -a บน PC1 — จะเห็น 194.3.128.2 ในตาราง ARP ไหม192.3.128.1192.3.128.1 (gateway) และเครื่องอื่นในวง 192.3.128.0/24 เท่านั้นmonitor session 1 source Interface GigabitEthernet1/0/1 , GigabitEthernet1/0/3 both แล้ว monitor session 1 destination interface GigabitEthernet1/0/13 จากนั้นเสียบเครื่องเราที่พอร์ต Gi1/0/13 · (สังเกตว่า switch ทำงานเลเยอร์ 2 จึงไม่มี RIP)① Mac ไม่มี PuTTY → ls /dev/tty.* แล้ว screen /dev/tty.usbmodemXXXX 9600 · ออก Ctrl+A Ctrl+\ · screen -ls / screen -r / screen -X -S <id> quit ② prompt บอกโหมด: > user · # privileged · (config)# global · (config-if)# interface ③ Serial: bandwidth 56 ตั้งสองฝั่ง แต่ clock rate 56000 ตั้งเฉพาะฝั่ง DCE — อาการลืม = up / down ④ show controllers คือคำสั่งที่บอกว่าใครเป็น DCE ⑤ copy run start ไม่งั้น config หายตอนปิดเครื่อง ⑥ ข้อสอบสั่งส่ง show running-config + show mac-address-table + show arp ⑦ Wireshark บน switch ต้องมี monitor session ก่อน ไม่งั้นไม่เห็นอะไร