แนวคิดทั่วไป
คำสั่ง Traceroute หรือที่เรียกว่า Tracert ใน Windows เป็นเครื่องมือวินิจฉัยเครือข่ายที่ใช้ในการติดตามเส้นทางที่แพ็กเก็ตข้อมูลจากต้นทางไปยังปลายทางสุดท้ายบนอินเทอร์เน็ต เครื่องมือนี้มีประโยชน์มากในการระบุปัญหาเครือข่ายที่อาจเกิดขึ้น เช่น เวลาแฝงสูงหรือแพ็กเก็ตที่สูญหาย
ในกระบวนการติดตามเส้นทาง คำสั่ง Traceroute จะส่งชุดของแพ็กเก็ตข้อมูลผ่านเครือข่าย และแต่ละแพ็กเก็ตจะมีหมายเลข TTL (Time To Live) ที่เริ่มต้นด้วยค่า 1 แต่ละครั้งที่แพ็กเก็ตมาถึงโหนดบน เครือข่ายโหนดจะลดค่า TTL ลง 1 ก่อนที่จะส่งต่อแพ็กเก็ต เมื่อค่า TTL ถึง 0 แพ็กเก็ตจะถูกละทิ้งและโหนดจะส่งข้อความ "เกินเวลา" ไปยังต้นทาง ซึ่งบ่งชี้ว่าแพ็กเก็ตไม่สามารถไปถึงปลายทางได้ และเกินเวลาที่อนุญาตแล้ว
คำสั่ง Traceroute ทำซ้ำขั้นตอนนี้สำหรับแต่ละโหนดบนเส้นทางจนกว่าแพ็กเก็ตจะไปถึงปลายทางสุดท้าย เมื่อสิ้นสุดกระบวนการ คำสั่ง Traceroute จะแสดงรายการโหนดบนเส้นทาง พร้อมด้วยที่อยู่ IP ของแต่ละโหนดและเวลาตอบสนองที่ใช้สำหรับแพ็กเก็ตในการเข้าถึงโหนดนั้น
ลำดับแพ็คเกจโดยละเอียด
การดำเนินการโดยละเอียดของคำสั่ง Traceroute สามารถแสดงได้ดังนี้:
- คำสั่ง Traceroute จะส่งแพ็กเก็ตข้อมูลที่มีค่า TTL เริ่มต้นเป็น 1 ไปยังปลายทางสุดท้าย
- โหนดแรกบนเส้นทางแพ็กเก็ตจะได้รับแพ็กเก็ต ลดค่า TTL ลง 1 และส่งการตอบสนอง "TTL หมดอายุ" ไปยังต้นทาง
- ต้นทางจะได้รับการตอบสนอง "เกินเวลา" และบันทึกที่อยู่ IP ของโหนดแรก
- คำสั่ง Traceroute จะส่งแพ็กเก็ตข้อมูลอื่นที่มีค่า TTL 2 ไปยังปลายทางสุดท้าย
- โหนดที่สองบนเส้นทางแพ็กเก็ตจะได้รับแพ็กเก็ต ลดค่า TTL ลง 1 และส่งการตอบสนอง "เกินเวลา" ไปยังต้นทาง
- ต้นทางจะได้รับการตอบสนอง "เกินเวลา" และบันทึกที่อยู่ IP ของโหนดที่สอง
- กระบวนการนี้จะถูกทำซ้ำสำหรับแต่ละโหนดในเส้นทางของแพ็กเก็ต โดยเพิ่มค่า TTL ในแต่ละรอบจนกว่าแพ็กเก็ตจะไปถึงปลายทางสุดท้าย
- เมื่อแพ็กเก็ตไปถึงปลายทางสุดท้าย คำสั่ง Traceroute จะแสดงเส้นทางแบบเต็มของแพ็กเก็ต รวมถึงที่อยู่ IP และเวลาตอบสนองของแต่ละโหนดบนเส้นทาง
คำสั่งใน MikroTik RouterOS คืออะไร
สำหรับตัวอย่างวิธีใช้คำสั่ง Traceroute บน Mikrotik RouterOS สามารถทำตามขั้นตอนต่อไปนี้:
เข้าถึงอินเทอร์เฟซเราเตอร์ Mikrotik และเปิดคอนโซลคำสั่ง
ป้อนคำสั่ง Traceroute ตามด้วยที่อยู่ IP หรือชื่อโดเมนของปลายทางที่คุณต้องการติดตามเส้นทาง ตัวอย่างเช่น หากต้องการติดตามเส้นทางไปยังเว็บไซต์ Google คุณสามารถใช้คำสั่งต่อไปนี้:
[admin@MikroTik] > tool traceroute google.com
รอให้กระบวนการติดตามเส้นทางเสร็จสิ้น ขึ้นอยู่กับจำนวนโหนดบนเส้นทางและเวลาแฝงของเครือข่าย กระบวนการนี้อาจใช้เวลาไม่กี่วินาทีหรือหลายนาที
ตรวจสอบผลลัพธ์ของคำสั่ง Traceroute เอาต์พุตคำสั่งจะแสดงรายการโหนดทั้งหมดบนเส้นทางไปยังปลายทาง พร้อมด้วยที่อยู่ IP ของแต่ละโหนดและเวลาตอบสนองที่ใช้ในการไปถึงโหนดนั้น ตัวอย่างเช่น:
ADDRESS STATUS
1 192.168.1.1 1ms 1ms 1ms
2 10.0.0.1 5ms 5ms 5ms
3 200.10.0.1 10ms 10ms 10ms
4 200.10.1.1 15ms 15ms 15ms
5 200.10.2.1 20ms 20ms 20ms
6 200.10.3.1 25ms 25ms 25ms
7 8.8.8.8 30ms 30ms 30ms
[admin@MikroTik] >
ในตัวอย่างนี้ คุณจะเห็นว่าแพ็กเก็ตข้อมูลส่งผ่านโหนดที่แตกต่างกันหกโหนดก่อนที่จะถึงปลายทางสุดท้าย (8.8.8.8)
ความแตกต่างระหว่าง Linux Traceroute และ Windows Tracert
มีความแตกต่างที่สำคัญบางประการระหว่างสองคำสั่ง:
ไวยากรณ์คำสั่ง: ไวยากรณ์ของคำสั่ง Linux Traceroute และคำสั่ง Windows Tracert จะแตกต่างกันเล็กน้อย บน Linux คำสั่งจะเขียนเป็น “traceroute” ในขณะที่บน Windows จะเขียนเป็น “tracert”
ตัวเลือกคำสั่ง: คำสั่ง Linux Traceroute และคำสั่ง Windows Tracert มีตัวเลือกคำสั่งที่แตกต่างกัน ตัวอย่างเช่น บน Linux คำสั่ง Traceroute รองรับตัวเลือก เช่น -I เพื่อระบุการใช้ ICMP แทน UDP ในขณะที่บน Windows คำสั่ง Tracert รองรับตัวเลือก เช่น -h เพื่อระบุจำนวนฮ็อพสูงสุด
รูปแบบเอาท์พุท: รูปแบบเอาต์พุตของคำสั่ง Linux Traceroute และคำสั่ง Windows Tracert ก็แตกต่างกันเช่นกัน บน Linux คำสั่ง Traceroute จะแสดงที่อยู่ IP และเวลาตอบสนองของแต่ละโหนดบนเส้นทาง ในขณะที่บน Windows คำสั่ง Tracert จะแสดงชื่อของแต่ละโหนดและเวลาตอบสนอง
ฟังก์ชันขั้นสูง: คำสั่ง Linux Traceroute มีความสามารถในการดำเนินการการย้อนกลับเส้นทางขั้นสูง เช่น การย้อนกลับเส้นทางย้อนกลับ และการติดตามกลับแบบหลายเส้นทาง นอกจากนี้ คำสั่ง Linux Traceroute ยังสามารถปรับแต่งได้มากกว่าคำสั่ง Windows Tracert ทำให้ผู้ใช้สามารถระบุพอร์ตและขนาดแพ็คเก็ตได้
โดยสรุป แม้ว่าทั้งสองคำสั่งจะคล้ายกันในการทำงานพื้นฐาน แต่ก็มีความแตกต่างที่สำคัญบางประการในด้านไวยากรณ์คำสั่ง ตัวเลือกคำสั่ง รูปแบบเอาต์พุต และฟังก์ชันการทำงานขั้นสูง
ตัวอย่างคำสั่งใน Linux
traceroute google.com
1 192.168.1.1 (192.168.1.1) 1.107 ms 1.237 ms 1.353 ms
2 10.255.255.1 (10.255.255.1) 14.527 ms 14.622 ms 14.719 ms
3 172.16.1.1 (172.16.1.1) 25.817 ms 25.912 ms 26.005 ms
4 172.16.2.1 (172.16.2.1) 38.320 ms 38.414 ms 38.505 ms
5 203.208.222.125 (203.208.222.125) 38.601 ms 37.301 ms 37.392 ms
6 72.14.195.12 (72.14.195.12) 60.225 ms 60.318 ms 60.415 ms
7 108.170.247.65 (108.170.247.65) 61.424 ms 61.511 ms 61.605 ms
8 108.170.235.225 (108.170.235.225) 62.719 ms 62.814 ms 62.908 ms
9 108.170.232.193 (108.170.232.193) 63.016 ms 63.103 ms 63.197 ms
10 74.125.244.16 (74.125.244.16) 63.300 ms 63.386 ms 63.480 ms
11 172.253.50.138 (172.253.50.138) 64.685 ms 64.781 ms 64.877 ms
12 172.253.66.7 (172.253.66.7) 65.122 ms 65.217 ms 65.314 ms
13 172.253.50.246 (172.253.50.246) 66.493 ms 66.587 ms 66.680 ms
14 74.125.252.128 (74.125.252.128) 66.879 ms 66.965 ms 67.058 ms
15 216.58.214.142 (216.58.214.142) 67.252 ms 67.365 ms 67.454 ms
ตัวอย่างคำสั่งใน Windows
tracert google.com
Tracing route to google.com [172.217.12.142]
over a maximum of 30 hops:
1 1 ms 1 ms 1 ms 192.168.1.1
2 17 ms 17 ms 18 ms 10.255.255.1
3 27 ms 27 ms 27 ms 172.16.1.1
4 40 ms 40 ms 40 ms 172.16.2.1
5 38 ms 37 ms 37 ms 203.208.222.125
6 59 ms 59 ms 59 ms 108.170.247.65
7 61 ms 61 ms 61 ms 108.170.235.225
8 63 ms 63 ms 63 ms 108.170.232.193
9 64 ms 64 ms 64 ms 74.125.244.16
10 67 ms 67 ms 67 ms 172.253.50.138
11 67 ms 67 ms 67 ms 172.253.66.7
12 69 ms 69 ms 69 ms 172.253.50.246
13 66 ms 66 ms 66 ms 74.125.252.128
14 66 ms 66 ms 66 ms 216.58.214.142
Trace complete.
อันไหนดีกว่ากัน?
โดยทั่วไปทั้งสองคำสั่ง (traceroute
y tracert
) มีประโยชน์ในการติดตามปัญหาเครือข่ายและวินิจฉัยปัญหาการเชื่อมต่อ การเลือกว่าจะใช้อันไหนจะขึ้นอยู่กับระบบปฏิบัติการและความชอบส่วนตัว
เกี่ยวกับลักษณะเฉพาะนั้น traceroute
บน Linux มีตัวเลือกและคุณสมบัติขั้นสูงมากกว่า tracert
บน Windows เช่น การรองรับโปรโตคอล UDP และ TCP และความสามารถในการปรับแต่งการหมดเวลาและจำนวนการกระโดด อย่างไรก็ตาม, tracert
บน Windows จะใช้งานง่ายกว่าและสามารถให้ข้อมูลที่ชัดเจนและอ่านได้มากขึ้นในบางกรณี
โดยสรุป เครื่องมือทั้งสองมีจุดแข็งและจุดอ่อน และการเลือกอย่างใดอย่างหนึ่งจะขึ้นอยู่กับการใช้งานเฉพาะและความชอบส่วนตัว