Lab 2: การวิเคราะห์ระบบเครือข่ายแบบครบวงจร

Comprehensive Network Analysis Laboratory


ข้อมูลทั่วไป

รายการ รายละเอียด
วิชา โปรโตคอลเครือข่ายและการวิเคราะห์
ระยะเวลา 3 ชั่วโมง
ระดับ พื้นฐาน - ปานกลาง
ระบบปฏิบัติการ Linux (Ubuntu/Debian)

วัตถุประสงค์การเรียนรู้

เมื่อเสร็จสิ้นแลปนี้ นักศึกษาจะสามารถ:

  1. ใช้คำสั่ง ip ตรวจสอบ Network Interface, IP Address และ Routing Table
  2. ทดสอบการเชื่อมต่อเครือข่ายด้วย ping และวิเคราะห์ผลลัพธ์
  3. ติดตามเส้นทางเครือข่ายด้วย traceroute และ mtr
  4. ตรวจสอบการเชื่อมต่อ TCP/UDP ด้วย ss
  5. วิเคราะห์ ARP Table ด้วยคำสั่ง ip neighbor
  6. จับและวิเคราะห์แพ็กเก็ตด้วย tcpdump
  7. บูรณาการเครื่องมือทั้งหมดเพื่อวิเคราะห์ปัญหาเครือข่าย

การเตรียมความพร้อม

ติดตั้งเครื่องมือที่จำเป็น

sudo apt update
sudo apt install -y net-tools iputils-ping traceroute mtr tcpdump iproute2 dnsutils curl netcat-openbsd

ตรวจสอบสิทธิ์การใช้งาน

# ตรวจสอบว่าสามารถใช้ sudo ได้
sudo whoami

สถานการณ์จำลอง

สถานการณ์: คุณเป็นผู้ดูแลระบบเครือข่าย ได้รับแจ้งว่าผู้ใช้ไม่สามารถเข้าถึงเว็บไซต์ google.com ได้ คุณต้องใช้เครื่องมือวิเคราะห์เครือข่ายทั้งหมดเพื่อตรวจสอบปัญหาอย่างเป็นระบบ


ส่วนที่ 1: ตรวจสอบ Network Interface ด้วยคำสั่ง ip

1.1 ทฤษฎีเบื้องต้น

คำสั่ง ip เป็นเครื่องมือหลักในการจัดการเครือข่ายบน Linux มีโครงสร้างดังนี้:

ip [OPTIONS] OBJECT COMMAND
OBJECT คำอธิบาย
link จัดการ Network Interface
addr จัดการที่อยู่ IP
route จัดการตาราง Routing
neighbor จัดการตาราง ARP

1.2 งานที่ต้องทำ

งานที่ 1.1: แสดงข้อมูล Network Interface

รันคำสั่งต่อไปนี้และบันทึกผลลัพธ์:

# แสดง interface ทั้งหมดแบบสรุป
ip -brief link show

# แสดง interface ที่ UP เท่านั้น
ip link show up

📋 ตารางบันทึกผล 1.1 - Network Interfaces:

Interface MAC Address State (UP/DOWN) MTU
.
.
.

งานที่ 1.2: แสดงที่อยู่ IP

รันคำสั่งต่อไปนี้:

# แสดงที่อยู่ IP ทั้งหมดแบบสรุป
ip -brief addr show

# แสดงเฉพาะ IPv4
ip -4 addr show

# แสดงเฉพาะ IPv6
ip -6 addr show

📋 ตารางบันทึกผล 1.2 - IP Addresses:

Interface IPv4 Address Subnet Mask (CIDR) IPv6 Address
.
.

งานที่ 1.3: ตรวจสอบตาราง Routing

รันคำสั่งต่อไปนี้:

# แสดงตาราง routing
ip route show

# ค้นหาเส้นทางไปยัง Google DNS
ip route get 8.8.8.8

# ค้นหาเส้นทางไปยัง google.com
ip route get $(dig +short google.com | head -1)

📋 ตารางบันทึกผล 1.3 - Routing Table:

Destination Gateway Interface Metric
default
.

📝 คำถาม 1.1: Default Gateway ของคุณคือ IP อะไร?

คำตอบ: _______________________________________________

📝 คำถาม 1.2: เส้นทางไปยัง 8.8.8.8 ใช้ interface ใด?

คำตอบ: _______________________________________________

ส่วนที่ 2: ทดสอบการเชื่อมต่อด้วยคำสั่ง ping

2.1 ทฤษฎีเบื้องต้น

ping ใช้โปรโตคอล ICMP ในการทดสอบการเชื่อมต่อ:

ICMP Type ชื่อ คำอธิบาย
8 Echo Request ส่งคำขอ ping
0 Echo Reply ตอบกลับ ping
11 Time Exceeded TTL หมดอายุ
3 Destination Unreachable ไม่สามารถเข้าถึงได้

ค่าที่สำคัญ:

2.2 งานที่ต้องทำ

งานที่ 2.1: ทดสอบการเชื่อมต่อตามลำดับชั้น

รันคำสั่งต่อไปนี้ตามลำดับ:

# ขั้นที่ 1: ทดสอบ Loopback (ตัวเอง)
ping -c 4 127.0.0.1

# ขั้นที่ 2: ทดสอบ Default Gateway
ping -c 4 <YOUR_GATEWAY_IP>

# ขั้นที่ 3: ทดสอบ DNS Server ภายนอก
ping -c 4 8.8.8.8

# ขั้นที่ 4: ทดสอบ Domain Name
ping -c 4 google.com

📋 ตารางบันทึกผล 2.1 - Ping Tests:

เป้าหมาย IP Address สำเร็จ (✓/✗) Min RTT Avg RTT Max RTT Packet Loss
localhost (127.0.0.1) 127.0.0.1
Default Gateway
Google DNS (8.8.8.8) 8.8.8.8
google.com

งานที่ 2.2: ทดสอบผลกระทบของขนาด Payload

รันคำสั่งต่อไปนี้:

# Payload ขนาดเล็ก (default = 56 bytes)
ping -c 4 -s 56 8.8.8.8

# Payload ขนาดกลาง
ping -c 4 -s 500 8.8.8.8

# Payload ขนาดใหญ่
ping -c 4 -s 1000 8.8.8.8

# Payload ขนาดใกล้ MTU (1472 + 8 ICMP header + 20 IP header = 1500)
ping -c 4 -s 1472 8.8.8.8

📋 ตารางบันทึกผล 2.2 - Payload Size Test:

Payload Size Total Size Avg RTT (ms) สำเร็จ (✓/✗)
56 bytes 84 bytes
500 bytes 528 bytes
1000 bytes 1028 bytes
1472 bytes 1500 bytes

งานที่ 2.3: ทดสอบผลกระทบของ TTL

รันคำสั่งต่อไปนี้:

# TTL = 1 (จะถึงแค่ hop แรก)
ping -c 2 -t 1 8.8.8.8

# TTL = 5
ping -c 2 -t 5 8.8.8.8

# TTL = 10
ping -c 2 -t 10 8.8.8.8

# TTL = 64 (default)
ping -c 2 -t 64 8.8.8.8

📋 ตารางบันทึกผล 2.3 - TTL Test:

TTL ผลลัพธ์ IP ที่ตอบกลับ (ถ้ามี)
1
5
10
64

📝 คำถาม 2.1: ทำไม TTL=1 จึงไม่ถึงปลายทาง?

คำตอบ: _______________________________________________
_______________________________________________

📝 คำถาม 2.2: จาก TTL ที่ทดสอบ คาดว่ามีกี่ hop ระหว่างคุณกับ 8.8.8.8?

คำตอบ: _______________________________________________

ส่วนที่ 3: ติดตามเส้นทางด้วย traceroute และ mtr

3.1 ทฤษฎีเบื้องต้น

traceroute ทำงานโดยส่งแพ็กเก็ตที่มี TTL เพิ่มขึ้นทีละ 1:

  1. TTL=1 → Router แรกตอบ ICMP Time Exceeded
  2. TTL=2 → Router ที่สองตอบ ICMP Time Exceeded
  3. ทำซ้ำจนถึงปลายทาง

mtr (My Traceroute) รวม ping และ traceroute เข้าด้วยกัน แสดงสถิติแบบ real-time

3.2 งานที่ต้องทำ

งานที่ 3.1: Traceroute ไปยัง google.com

รันคำสั่งต่อไปนี้:

# Traceroute แบบ UDP (default)
traceroute -n google.com

# Traceroute แบบ ICMP
traceroute -I -n google.com

# Traceroute แบบ TCP port 443
sudo traceroute -T -p 443 -n google.com

📋 ตารางบันทึกผล 3.1 - Traceroute (เลือก protocol ใดก็ได้):

Hop IP Address RTT 1 (ms) RTT 2 (ms) RTT 3 (ms) หมายเหตุ
1 Gateway
2
3
4
5
6
7
8
...
Final ปลายทาง

งานที่ 3.2: เปรียบเทียบ Traceroute Protocols

📋 ตารางบันทึกผล 3.2 - Protocol Comparison:

Protocol จำนวน Hops ทั้งหมด Hops ที่ timeout (*) เวลารวม (ms)
UDP
ICMP
TCP/443

📝 คำถาม 3.1: ทำไมบาง hop จึงแสดงเป็น * * *?

คำตอบ: _______________________________________________
_______________________________________________

งานที่ 3.3: ใช้ mtr วิเคราะห์คุณภาพเส้นทาง

รันคำสั่งต่อไปนี้:

# mtr แบบ report (ส่ง 20 packets)
mtr -r -c 20 -n google.com

📋 ตารางบันทึกผล 3.3 - MTR Report:

Hop Host Loss% Snt Last Avg Best Wrst StDev
1 20
2 20
3 20
4 20
5 20
...

📝 คำถาม 3.2: ค่า StDev (Standard Deviation) สูง บ่งบอกถึงอะไร?

คำตอบ: _______________________________________________
_______________________________________________

📝 คำถาม 3.3: mtr มีข้อดีกว่า traceroute อย่างไร?

คำตอบ: _______________________________________________
_______________________________________________

ส่วนที่ 4: ตรวจสอบการเชื่อมต่อด้วยคำสั่ง ss

4.1 ทฤษฎีเบื้องต้น

สถานะการเชื่อมต่อ TCP:

State คำอธิบาย
LISTEN รอรับการเชื่อมต่อ
ESTABLISHED การเชื่อมต่อสมบูรณ์
TIME-WAIT รอให้แน่ใจว่าแพ็กเก็ตทั้งหมดถึงแล้ว
CLOSE-WAIT ได้รับ FIN แล้ว รอปิด

Options ที่สำคัญ:

Option คำอธิบาย
-t แสดง TCP
-u แสดง UDP
-n แสดง numeric (ไม่ resolve)
-l แสดง listening sockets
-p แสดง process
-a แสดงทั้งหมด

4.2 งานที่ต้องทำ

งานที่ 4.1: แสดง Listening Ports

รันคำสั่งต่อไปนี้:

# แสดง TCP และ UDP listening ports พร้อม process
sudo ss -tunlp

📋 ตารางบันทึกผล 4.1 - Listening Ports (เลือก 5 รายการ):

Proto Local Address Port State Process
.
.
.
.
.

งานที่ 4.2: สร้างและตรวจสอบการเชื่อมต่อ

ขั้นตอนที่ 1: เปิด web browser หรือใช้ curl เพื่อเข้า google.com

# ใช้ curl เปิดการเชื่อมต่อ
curl -s -o /dev/null https://google.com &

ขั้นตอนที่ 2: ตรวจสอบการเชื่อมต่อ

# แสดง established connections ไปยัง port 443
ss -tn state established 'dport = :443'

# แสดงทั้งหมดที่เกี่ยวกับ port 443
ss -tn 'sport = :443 or dport = :443'

📋 ตารางบันทึกผล 4.2 - HTTPS Connections:

Local Address:Port Peer Address:Port State
.
.

งานที่ 4.3: แสดงสถิติรวม

รันคำสั่งต่อไปนี้:

ss -s

📋 ตารางบันทึกผล 4.3 - Socket Statistics:

รายการ จำนวน
Total sockets
TCP total
TCP established
TCP closed
TCP time-wait
UDP

งานที่ 4.4: สร้างการเชื่อมต่อทดสอบด้วย netcat

Terminal 1 (Server):

# สร้าง TCP server listening ที่ port 12345
nc -l -p 12345

Terminal 2 (Client):

# เชื่อมต่อไปยัง server
nc localhost 12345

Terminal 3 (Monitor):

# ตรวจสอบการเชื่อมต่อ
ss -tn 'sport = :12345 or dport = :12345'

📋 ตารางบันทึกผล 4.4 - Netcat Connection:

Role Local Address:Port Peer Address:Port State
Server
Client

📝 คำถาม 4.1: ความแตกต่างระหว่าง LISTEN และ ESTABLISHED คืออะไร?

คำตอบ: _______________________________________________
_______________________________________________

ส่วนที่ 5: วิเคราะห์ ARP Table

5.1 ทฤษฎีเบื้องต้น

ARP (Address Resolution Protocol) แปลงที่อยู่ IP (Layer 3) เป็นที่อยู่ MAC (Layer 2)

สถานะใน ARP Table:

State คำอธิบาย
REACHABLE ยืนยันแล้วว่าใช้งานได้
STALE หมดอายุ รอการยืนยันใหม่
DELAY รอส่ง probe
FAILED ไม่สามารถ resolve ได้
PERMANENT Static entry

5.2 งานที่ต้องทำ

งานที่ 5.1: แสดง ARP Table ปัจจุบัน

รันคำสั่งต่อไปนี้:

# แสดง ARP table ด้วย ip neighbor
ip neighbor show

# หรือใช้คำสั่ง arp
arp -n

📋 ตารางบันทึกผล 5.1 - ARP Table:

IP Address MAC Address Interface State
.
.
.
.

งานที่ 5.2: สังเกตการทำงานของ ARP

ขั้นตอนที่ 1: ล้าง ARP cache (ต้องใช้ sudo)

# ล้าง ARP cache
sudo ip neighbor flush all

# ตรวจสอบว่า ARP table ว่าง
ip neighbor show

ขั้นตอนที่ 2: Ping ไปยัง Default Gateway

ping -c 1 <YOUR_GATEWAY_IP>

ขั้นตอนที่ 3: ตรวจสอบ ARP table อีกครั้ง

ip neighbor show

📋 ตารางบันทึกผล 5.2 - ARP Changes:

ขั้นตอน จำนวน Entries Entry ใหม่ที่เพิ่ม
หลัง flush -
หลัง ping gateway

📝 คำถาม 5.1: ทำไมต้องมี ARP ในการส่งข้อมูลผ่าน LAN?

คำตอบ: _______________________________________________
_______________________________________________

📝 คำถาม 5.2: ถ้าไม่มี entry ใน ARP table จะเกิดอะไรขึ้นเมื่อส่งข้อมูลไปยัง IP นั้น?

คำตอบ: _______________________________________________
_______________________________________________

ส่วนที่ 6: จับและวิเคราะห์แพ็กเก็ตด้วย tcpdump

6.1 ทฤษฎีเบื้องต้น

tcpdump เป็นเครื่องมือจับแพ็กเก็ต (packet capture) แบบ command-line

โครงสร้างคำสั่ง:

tcpdump [options] [filter expression]

Options ที่สำคัญ:

Option คำอธิบาย
-i ระบุ interface
-c จำนวนแพ็กเก็ต
-n ไม่ resolve DNS
-v verbose
-w บันทึกลงไฟล์
-r อ่านจากไฟล์
-X แสดง hex และ ASCII

Filter expressions:

Filter คำอธิบาย
host 192.168.1.1 กรองตาม IP
port 80 กรองตาม port
tcp เฉพาะ TCP
udp เฉพาะ UDP
icmp เฉพาะ ICMP

6.2 งานที่ต้องทำ

งานที่ 6.1: จับ ICMP Traffic (Ping)

Terminal 1 (Capture):

sudo tcpdump -i any icmp -n -c 10

Terminal 2 (Generate Traffic):

ping -c 4 8.8.8.8

📋 ตารางบันทึกผล 6.1 - ICMP Packets:

เวลา Source IP Dest IP ICMP Type Info
request
reply
request
reply

งานที่ 6.2: จับ DNS Traffic

Terminal 1 (Capture):

sudo tcpdump -i any port 53 -n -c 10

Terminal 2 (Generate Traffic):

nslookup google.com
dig facebook.com

📋 ตารางบันทึกผล 6.2 - DNS Packets:

Direction Source Dest Query Type Domain
Query A
Response A
Query A
Response A

งานที่ 6.3: จับ TCP Handshake

Terminal 1 (Capture):

# จับเฉพาะ SYN, SYN-ACK, FIN packets
sudo tcpdump -i any 'tcp[tcpflags] & (tcp-syn|tcp-fin) != 0' -n -c 20

Terminal 2 (Generate Traffic):

curl -I https://google.com

📋 ตารางบันทึกผล 6.3 - TCP Handshake:

# Source:Port Dest:Port Flags คำอธิบาย
1 [S] SYN - Client เริ่มการเชื่อมต่อ
2 [S.] SYN-ACK - Server ตอบรับ
3 [.] ACK - Client ยืนยัน
... [F.] FIN - ปิดการเชื่อมต่อ

งานที่ 6.4: จับ HTTP/HTTPS Traffic

Terminal 1 (Capture):

sudo tcpdump -i any 'tcp and (port 80 or port 443)' -n -c 30

Terminal 2 (Generate Traffic):

curl -I http://example.com
curl -I https://google.com

📋 ตารางบันทึกผล 6.4 - Web Traffic:

Protocol Port จำนวน Packets หมายเหตุ
HTTP 80
HTTPS 443

งานที่ 6.5: บันทึกและวิเคราะห์ Capture File

ขั้นตอนที่ 1: จับแพ็กเก็ตและบันทึกลงไฟล์

# จับ 50 แพ็กเก็ตและบันทึก
sudo tcpdump -i any -c 50 -w /tmp/capture.pcap

ระหว่างจับ ให้ทำกิจกรรมต่อไปนี้:

# ในอีก terminal
ping -c 3 google.com
curl -s http://example.com > /dev/null
nslookup facebook.com

ขั้นตอนที่ 2: วิเคราะห์ไฟล์ที่บันทึก

# อ่านไฟล์ทั้งหมด
tcpdump -r /tmp/capture.pcap | head -20

# นับจำนวนแพ็กเก็ตแต่ละประเภท
echo "Total packets:"
tcpdump -r /tmp/capture.pcap 2>/dev/null | wc -l

echo "TCP packets:"
tcpdump -r /tmp/capture.pcap tcp 2>/dev/null | wc -l

echo "UDP packets:"
tcpdump -r /tmp/capture.pcap udp 2>/dev/null | wc -l

echo "ICMP packets:"
tcpdump -r /tmp/capture.pcap icmp 2>/dev/null | wc -l

📋 ตารางบันทึกผล 6.5 - Capture Analysis:

Protocol จำนวน Packets เปอร์เซ็นต์
Total 100%
TCP
UDP
ICMP

📝 คำถาม 6.1: ทำไม tcpdump ต้องใช้สิทธิ์ root (sudo)?

คำตอบ: _______________________________________________
_______________________________________________

📝 คำถาม 6.2: ไฟล์ .pcap สามารถเปิดด้วยโปรแกรมอะไรได้บ้าง?

คำตอบ: _______________________________________________

ส่วนที่ 7: บูรณาการเครื่องมือทั้งหมด - การวิเคราะห์ปัญหา

7.1 สถานการณ์

ผู้ใช้แจ้งว่า "เข้าเว็บ google.com ไม่ได้" ให้ใช้เครื่องมือทั้งหมดที่เรียนมาวิเคราะห์ปัญหาอย่างเป็นระบบ

7.2 Checklist การวิเคราะห์

✅ ขั้นที่ 1: ตรวจสอบ Network Interface (ip)

ip -brief link show
ip -brief addr show
รายการตรวจสอบ ผลลัพธ์ ปกติ/ผิดปกติ
Interface มี state UP
มี IP Address

✅ ขั้นที่ 2: ตรวจสอบ Routing (ip route)

ip route show
ip route get 8.8.8.8
รายการตรวจสอบ ผลลัพธ์ ปกติ/ผิดปกติ
มี Default Gateway
Route ไปยัง 8.8.8.8 พบ

✅ ขั้นที่ 3: ทดสอบการเชื่อมต่อพื้นฐาน (ping)

ping -c 2 127.0.0.1
ping -c 2 <GATEWAY_IP>
ping -c 2 8.8.8.8
ping -c 2 google.com
เป้าหมาย ผลลัพธ์ ปกติ/ผิดปกติ
localhost
Gateway
8.8.8.8
google.com

✅ ขั้นที่ 4: ตรวจสอบ DNS

cat /etc/resolv.conf
nslookup google.com
nslookup google.com 8.8.8.8
รายการตรวจสอบ ผลลัพธ์ ปกติ/ผิดปกติ
DNS Server ที่ใช้
Resolve google.com ได้

✅ ขั้นที่ 5: ตรวจสอบเส้นทาง (traceroute)

traceroute -n google.com
รายการตรวจสอบ ผลลัพธ์ ปกติ/ผิดปกติ
ถึงปลายทางได้
จำนวน hops
มี hop ที่ timeout

✅ ขั้นที่ 6: ตรวจสอบ ARP (ip neighbor)

ip neighbor show
รายการตรวจสอบ ผลลัพธ์ ปกติ/ผิดปกติ
มี entry ของ Gateway
State เป็น REACHABLE

✅ ขั้นที่ 7: ตรวจสอบการเชื่อมต่อ TCP (ss)

# ทดสอบเชื่อมต่อ port 443
nc -zv google.com 443

# ตรวจสอบ connections
ss -tn 'dport = :443'
รายการตรวจสอบ ผลลัพธ์ ปกติ/ผิดปกติ
เชื่อมต่อ port 443 ได้

✅ ขั้นที่ 8: จับแพ็กเก็ตวิเคราะห์ (tcpdump)

# Terminal 1: จับแพ็กเก็ต
sudo tcpdump -i any host google.com -n -c 20

# Terminal 2: สร้าง traffic
curl -I https://google.com
รายการตรวจสอบ ผลลัพธ์ ปกติ/ผิดปกติ
เห็น TCP handshake
มี response กลับมา

7.3 สรุปผลการวิเคราะห์

📋 ตารางสรุปการวิเคราะห์:

ขั้นตอน เครื่องมือ ผลลัพธ์ สถานะ
1. Network Interface ip link/addr ✅/❌
2. Routing ip route ✅/❌
3. Connectivity ping ✅/❌
4. DNS nslookup ✅/❌
5. Path traceroute ✅/❌
6. ARP ip neighbor ✅/❌
7. TCP ss/nc ✅/❌
8. Packets tcpdump ✅/❌

📝 การวินิจฉัยปัญหา (ถ้าพบ):

ปัญหาที่พบ: _______________________________________________

สาเหตุ: _______________________________________________

แนวทางแก้ไข: _______________________________________________

Quick Reference Card

╔══════════════════════════════════════════════════════════════════╗
║                   NETWORK ANALYSIS COMMANDS                       ║
╠══════════════════════════════════════════════════════════════════╣
║ ip link show              │ แสดง network interfaces              ║
║ ip addr show              │ แสดง IP addresses                    ║
║ ip route show             │ แสดง routing table                   ║
║ ip route get <IP>         │ หาเส้นทางไปยัง IP                    ║
║ ip neighbor show          │ แสดง ARP table                       ║
╠══════════════════════════════════════════════════════════════════╣
║ ping -c 4 <host>          │ ทดสอบการเชื่อมต่อ                    ║
║ ping -s <size> <host>     │ กำหนดขนาด payload                    ║
║ ping -t <ttl> <host>      │ กำหนด TTL                            ║
╠══════════════════════════════════════════════════════════════════╣
║ traceroute <host>         │ ติดตามเส้นทาง (UDP)                  ║
║ traceroute -I <host>      │ ติดตามเส้นทาง (ICMP)                 ║
║ traceroute -T -p 443      │ ติดตามเส้นทาง (TCP)                  ║
║ mtr -r -c 20 <host>       │ traceroute + statistics              ║
╠══════════════════════════════════════════════════════════════════╣
║ ss -tunlp                 │ แสดง listening ports + process       ║
║ ss -tn state established  │ แสดง established connections         ║
║ ss 'dport = :443'         │ กรองตาม destination port             ║
║ ss -s                     │ แสดงสถิติ                            ║
╠══════════════════════════════════════════════════════════════════╣
║ tcpdump -i <iface>        │ จับแพ็กเก็ต                          ║
║ tcpdump -c <n>            │ จำนวนแพ็กเก็ต                        ║
║ tcpdump -n                │ ไม่ resolve DNS                      ║
║ tcpdump -w <file>         │ บันทึกลงไฟล์                         ║
║ tcpdump -r <file>         │ อ่านจากไฟล์                          ║
║ tcpdump host <ip>         │ กรองตาม host                         ║
║ tcpdump port <port>       │ กรองตาม port                         ║
║ tcpdump tcp/udp/icmp      │ กรองตาม protocol                     ║
╚══════════════════════════════════════════════════════════════════╝

เกณฑ์การประเมิน

ส่วน หัวข้อ คะแนนเต็ม คะแนนที่ได้
1 คำสั่ง ip (interface, addr, route) 15
2 คำสั่ง ping 15
3 คำสั่ง traceroute และ mtr 15
4 คำสั่ง ss 15
5 คำสั่ง ip neighbor (ARP) 10
6 คำสั่ง tcpdump 20
7 การบูรณาการวิเคราะห์ปัญหา 10
รวม 100

คำถามทบทวนท้ายแลป

คำถามที่ 1: อธิบายลำดับขั้นตอนที่ถูกต้องในการวิเคราะห์ปัญหา "เข้าเว็บไม่ได้"

คำตอบ: _______________________________________________
_______________________________________________
_______________________________________________
_______________________________________________

คำถามที่ 2: ความแตกต่างระหว่าง TCP และ UDP ที่เห็นได้จาก tcpdump คืออะไร?

คำตอบ: _______________________________________________
_______________________________________________
_______________________________________________

คำถามที่ 3: ถ้า ping ไปยัง IP address ได้ แต่ ping ไปยัง hostname ไม่ได้ ปัญหาอยู่ที่ใด?

คำตอบ: _______________________________________________
_______________________________________________

คำถามที่ 4: ค่า TTL ในผลลัพธ์ของ ping บอกอะไรเราได้บ้าง?

คำตอบ: _______________________________________________
_______________________________________________

คำถามที่ 5: ยกตัวอย่างสถานการณ์ที่ควรใช้ tcpdump ในการวิเคราะห์ปัญหา

คำตอบ: _______________________________________________
_______________________________________________
_______________________________________________

ข้อมูลผู้ทำแลป

รายการ ข้อมูล
ชื่อ-นามสกุล
รหัสนักศึกษา
วันที่ทำแลป