คำสั่ง traceroute: การติดตั้ง วิธีใช้ และตัวเลือก -n, -I, -T
เมื่อต้องการตรวจสอบเราเตอร์ที่แพ็กเก็ตผ่านไปยังปลายทางทีละฮอป ให้ใช้คำสั่ง traceroute บนเซิร์ฟเวอร์ AlmaLinux 9.8 ไม่ได้ติดตั้ง traceroute ไว้ เราจึงติดตั้งด้วย dnf และเมื่อติดตามเส้นทางไปยัง example.com บนเซิร์ฟเวอร์ Debian 12 ที่มี traceroute 2.1.2 ก็ถึงปลายทางที่ฮอปที่เจ็ด
เอาต์พุตด้านล่างมาจากเซิร์ฟเวอร์ Debian 12 ที่รันด้วยบัญชีผู้ใช้ทั่วไป มีเพียงเอาต์พุตของ rpm และ dnf ในบทการติดตั้งที่ได้จากเซิร์ฟเวอร์ AlmaLinux 9.8 (บัญชี root) ชื่อโฮสต์ของเซิร์ฟเวอร์เปลี่ยนเป็น server1 และที่อยู่ของเราเตอร์กับปลายทางในเส้นทางเปลี่ยนเป็นที่อยู่ตัวอย่าง (192.0.2.x, 198.51.100.x, 203.0.113.x) เลขรีลีสของแพ็กเกจที่ติดตั้ง (เวอร์ชันหลัก 2.1 คงเดิม) และเวลาเมทาดาทาของ dnf ก็เป็นค่าตัวอย่างเช่นกัน ส่วนเวลาตอบกลับคงไว้ตามที่วัดได้จริง
1️⃣ การติดตั้ง traceroute
traceroute จะถูกติดตั้งมาให้หรือไม่นั้นขึ้นอยู่กับดิสทริบิวชัน เมื่อรันบนเซิร์ฟเวอร์ AlmaLinux 9.8 ขึ้น [traceroute: command not found] และเมื่อสอบถามด้วย rpm ก็ไม่พบแพ็กเกจที่ติดตั้งไว้
rpm -q traceroutepackage traceroute is not installedตระกูล RHEL ติดตั้งด้วย dnf เมื่อใส่ [--assumeno] เพื่อดูตัวอย่างก่อนติดตั้ง มีเพียงแพ็กเกจ traceroute จากคลัง baseos แพ็กเกจเดียว และไม่มีแพ็กเกจอื่นติดตั้งร่วมด้วย
dnf install --assumeno tracerouteLast metadata expiration check: 0:05:00 ago on Thu Oct 29 09:00:00 2026.
Dependencies resolved.
================================================================================
Package Architecture Version Repository Size
================================================================================
Installing:
traceroute x86_64 3:2.1.0-9.el9 baseos 56 k
Transaction Summary
================================================================================
Install 1 Package
Total download size: 56 k
Installed size: 107 k
Operation aborted.ขนาดดาวน์โหลดคือ 56k และขนาดหลังติดตั้งคือ 107k [--assumeno] เป็นตัวเลือกที่ตอบ no ทุกคำถาม จึงไม่ติดตั้งอะไรและจบด้วย [Operation aborted.] (ตามเอกสารทางการของ dnf)
การติดตั้งจริงทำด้วย [dnf install traceroute] โดยไม่ใส่ [--assumeno]
dnf install tracerouteLast metadata expiration check: 0:20:00 ago on Thu Oct 29 09:00:00 2026.
Dependencies resolved.
================================================================================
Package Architecture Version Repository Size
================================================================================
Installing:
traceroute x86_64 3:2.1.0-9.el9 baseos 56 k
Transaction Summary
================================================================================
Install 1 Package
Total download size: 56 k
Installed size: 107 k
Downloading Packages:
traceroute-2.1.0-9.el9.x86_64.rpm 3.6 MB/s | 56 kB 00:00
--------------------------------------------------------------------------------
Total 97 kB/s | 56 kB 00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : traceroute-3:2.1.0-9.el9.x86_64 1/1
Running scriptlet: traceroute-3:2.1.0-9.el9.x86_64 1/1
Verifying : traceroute-3:2.1.0-9.el9.x86_64 1/1
Installed:
traceroute-3:2.1.0-9.el9.x86_64
Complete!ใต้ [Installed:] มีเพียงแพ็กเกจ traceroute และการติดตั้งจบด้วย [Complete!] โดยไม่มีแพ็กเกจที่ต้องพึ่งพา
หลังติดตั้งแล้ว เราตรวจสอบเวอร์ชันด้วย [traceroute --version]
traceroute --versionModern traceroute for Linux, version 2.1.0
Copyright (c) 2016 Dmitry Butskoy, License: GPL v2 or any laterพาธของไฟล์ปฏิบัติการที่พบด้วย [command -v traceroute] คือ [/usr/bin/traceroute]
ตระกูล Debian ติดตั้งแพ็กเกจ traceroute จากคลังของดิสทริบิวชันด้วย [apt install traceroute] (ตามข้อมูลแพ็กเกจทางการของ Debian) และตรวจสอบเวอร์ชันที่ติดตั้งด้วย --version
traceroute --versionModern traceroute for Linux, version 2.1.2
Copyright (c) 2016 Dmitry Butskoy, License: GPL v2 or any laterบนเซิร์ฟเวอร์ Debian 12 มีแพ็กเกจ traceroute ติดตั้งอยู่แล้ว และเวอร์ชันแสดงเป็น [Modern traceroute for Linux] 2.1.2
2️⃣ วิธีใช้คำสั่ง traceroute
traceroute รับชื่อปลายทางหรือที่อยู่ IP หนึ่งรายการ แล้วส่งแพ็กเก็ตโดยเพิ่ม TTL ทีละหนึ่งตั้งแต่ 1 แพ็กเก็ตที่มี TTL เป็น 1 จะหมดอายุที่เราเตอร์ตัวแรก และแพ็กเก็ตที่มี TTL เป็น 2 จะหมดอายุที่เราเตอร์ตัวที่สอง จากการตอบกลับ [time exceeded] ที่เราเตอร์เหล่านั้นส่งกลับมา traceroute จะแสดงที่อยู่และเวลาไป-กลับของแต่ละฮอป (ตามคู่มือทางการ)
เมื่อถึงปลายทาง ปลายทางจะตอบกลับด้วย [port unreachable] และจบที่ฮอปนั้น แต่ถ้าไปไม่ถึงจะทำต่อไปจนถึงจำนวนฮอปสูงสุด ตามคู่มือทางการ แต่ละฮอปจะส่งแพ็กเก็ตสามครั้ง จึงมีเวลาสามค่าในหนึ่งบรรทัด และค่าเริ่มต้นตรวจสอบได้สูงสุด 30 ฮอป
สำหรับ example.com เราแสดงเฉพาะที่อยู่ด้วย -n และตรวจสอบถึงแค่ฮอปที่สิบด้วย -m 10
traceroute -n -m 10 example.comtraceroute to example.com (203.0.113.154), 10 hops max, 60 byte packets
1 192.0.2.1 0.110 ms 0.083 ms 0.067 ms
2 192.0.2.2 0.348 ms 0.273 ms 0.263 ms
3 198.51.100.77 0.426 ms 0.337 ms 198.51.100.13 1.251 ms
4 198.51.100.49 0.968 ms 1.264 ms 198.51.100.53 1.148 ms
5 * * *
6 203.0.113.19 1.631 ms 203.0.113.25 2.549 ms 203.0.113.14 1.543 ms
7 203.0.113.154 1.544 ms 1.656 ms 1.607 msบรรทัดแรกแสดงชื่อปลายทาง ที่อยู่ที่ส่งไปจริง จำนวนฮอปสูงสุด และขนาดแพ็กเก็ต 60 ไบต์ ที่อยู่ปลายทางตอบกลับที่ฮอปที่เจ็ด จึงจบโดยไม่ไปถึงฮอปที่สิบ และตั้งแต่เริ่มรันจนจบใช้เวลาไม่ถึงหนึ่งวินาที
| เอาต์พุต | ความหมาย |
|---|---|
| traceroute to example.com (203.0.113.154) | ชื่อปลายทางและที่อยู่ที่แปลงจากชื่อซึ่งส่งไปจริง |
| 10 hops max | จำนวนฮอปสูงสุดที่ตรวจสอบ — กำหนดด้วย -m ค่าเริ่มต้นคือ 30 |
| 60 byte packets | ขนาดแพ็กเก็ตที่ส่ง — ค่าเริ่มต้น IPv4 คือ 60 ไบต์ IPv6 คือ 80 ไบต์ (ตามคู่มือทางการ) |
| 1 | หมายเลขฮอป — ค่า TTL ที่ใส่ในแพ็กเก็ตนั้น |
| 192.0.2.1 | ที่อยู่ของเราเตอร์ที่ตอบกลับที่ฮอปนั้น |
| 0.110 ms 0.083 ms 0.067 ms | เวลาไป-กลับของแพ็กเก็ตสามตัวที่ส่งไปยังหนึ่งฮอป |
| 198.51.100.77 … 198.51.100.13 | บรรทัดที่มีสองที่อยู่ เพราะเราเตอร์คนละตัวตอบกลับแต่ละแพ็กเก็ตในฮอปเดียวกัน |
| * * * | แพ็กเก็ตทั้งสามไม่ได้รับการตอบกลับภายในเวลาที่กำหนด — ดอกจันหนึ่งตัวคือหนึ่งแพ็กเก็ต |
| !H · !N · !P · !X | สัญลักษณ์ไปไม่ถึงที่ต่อท้ายเวลา — โฮสต์ เครือข่าย หรือโปรโตคอลไปไม่ถึง และถูกห้ามโดยผู้ดูแล (ตามคู่มือทางการ) |
ฮอปที่สามและสี่แสดงสองที่อยู่ในบรรทัดเดียว ส่วนฮอปที่หกแสดงสามที่อยู่ เมื่อเราเตอร์คนละตัวตอบกลับแพ็กเก็ตสามตัวที่ส่งไปยังหนึ่งฮอป traceroute จะแสดงที่อยู่ที่ตอบกลับทั้งหมดต่อกันตามที่คู่มือทางการระบุ
ถ้ารันโดยไม่มี -n จะแปลงที่อยู่ที่ตอบกลับเป็นชื่อโฮสต์แล้วแสดงผล
traceroute localhosttraceroute to localhost (127.0.0.1), 30 hops max, 60 byte packets
1 server1 (127.0.0.1) 0.068 ms 0.048 ms 0.028 msเมื่อรันกับ localhost คอลัมน์ฮอปแสดงชื่อโฮสต์ของเซิร์ฟเวอร์ Debian 12 และมีที่อยู่ 127.0.0.1 ในวงเล็บ
3️⃣ ตัวเลือกของ traceroute
--help ของ traceroute 2.1.2 แสดงตัวเลือก 34 รายการ ในจำนวนนั้นเราได้รัน -n, -q, -m ที่เปลี่ยนเอาต์พุต และ -I, -T ที่เปลี่ยนแพ็กเก็ตที่ส่ง ด้วยบัญชีผู้ใช้ทั่วไปบนเซิร์ฟเวอร์ Debian 12
[traceroute -n] แสดงเฉพาะที่อยู่ IP โดยไม่แปลงเป็นชื่อโฮสต์ เมื่อใส่ -n กับ localhost เดิม คอลัมน์ฮอปเหลือเพียง 127.0.0.1
traceroute -n localhosttraceroute to localhost (127.0.0.1), 30 hops max, 60 byte packets
1 127.0.0.1 0.073 ms 0.075 ms 0.025 ms-q เป็นตัวเลือกกำหนดจำนวนแพ็กเก็ตที่ส่งต่อหนึ่งฮอป ค่าเริ่มต้นคือ 3 เมื่อลดเป็น -q 1 มีเวลาแสดงค่าเดียว และเมื่อเพิ่มเป็น -q 5 แสดงห้าค่า
traceroute -q 1 -n 127.0.0.1traceroute to 127.0.0.1 (127.0.0.1), 30 hops max, 60 byte packets
1 127.0.0.1 0.096 mstraceroute -q 5 -n 127.0.0.1traceroute to 127.0.0.1 (127.0.0.1), 30 hops max, 60 byte packets
1 127.0.0.1 0.083 ms 0.028 ms 0.024 ms 0.022 ms 0.022 ms-m เป็นตัวเลือกเปลี่ยนจำนวนฮอปสูงสุดที่ตรวจสอบ เมื่อใส่ 256 ถูกปฏิเสธด้วย [max hops cannot be more than 255]
traceroute -m 256 -n 127.0.0.1max hops cannot be more than 255ค่าเริ่มต้นของแพ็กเก็ตที่ส่งคือ UDP โดย -I จะส่งเป็น ICMP ECHO และ -T จะส่งเป็น TCP SYN (ค่าเริ่มต้นพอร์ต 80) ตัวเลือกทั้งสองใช้เมื่อต้องการตรวจสอบเส้นทางที่กรอง UDP อีกครั้งด้วยแพ็กเก็ตชนิดอื่น เมื่อรันทั้งสองตัวเลือกด้วยบัญชีผู้ใช้ทั่วไป จะแสดงข้อความว่าสิทธิ์ไม่เพียงพอและจบด้วยรหัสออก 1
traceroute -I -n 127.0.0.1You do not have enough privileges to use this traceroute method.
socket: Operation not permittedtraceroute -T -n 127.0.0.1You do not have enough privileges to use this traceroute method.
socket: Operation not permittedคู่มือทางการระบุว่าวิธีเริ่มต้นและ -U (พอร์ตปลายทางคงที่ 53) เป็นวิธีที่อนุญาตให้บัญชีผู้ใช้ทั่วไปใช้ได้ ส่วน -I รันด้วยบัญชีผู้ใช้ทั่วไปได้ก็ต่อเมื่อการตั้งค่าเคอร์เนล ping_group_range อนุญาตกลุ่มของบัญชีนั้น
cat /proc/sys/net/ipv4/ping_group_range1 0ค่าบนเซิร์ฟเวอร์ Debian 12 คือ [1 0] ซึ่งตามเอกสารเคอร์เนล Linux หมายถึงไม่อนุญาตกลุ่มใดเลย ส่วน -T ไม่อยู่ในวิธีที่อนุญาตให้บัญชีผู้ใช้ทั่วไปใช้ไม่ว่าค่านี้จะเป็นอย่างไร ดังนั้นให้รันทั้งสองตัวเลือกด้วยบัญชีที่มีสิทธิ์ root
📌 ตัวเลือกหลัก: ผลที่รันในบทความนี้
| ตัวเลือก | หน้าที่ | ผลที่เห็นในบทความนี้ |
|---|---|---|
| -n | แสดงเฉพาะที่อยู่ IP โดยไม่แปลงเป็นชื่อโฮสต์ | เมื่อใส่กับ localhost คอลัมน์ฮอปเหลือเพียง 127.0.0.1 |
| -q | กำหนดจำนวนแพ็กเก็ตที่ส่งต่อหนึ่งฮอป (ค่าเริ่มต้น 3) | -q 1 แสดงเวลาหนึ่งค่า -q 5 แสดงห้าค่า |
| -m | กำหนดจำนวนฮอปสูงสุดที่ตรวจสอบ (ค่าเริ่มต้น 30) | ด้วย -m 10 example.com จบที่ฮอปที่เจ็ด ส่วน -m 256 ถูกปฏิเสธด้วย [max hops cannot be more than 255] |
| -I | ส่งแพ็กเก็ตเป็น ICMP ECHO | บัญชีผู้ใช้ทั่วไปแสดงข้อความสิทธิ์ไม่เพียงพอและรหัสออก 1 |
| -T | ส่งแพ็กเก็ตเป็น TCP SYN (ค่าเริ่มต้นพอร์ต 80) | บัญชีผู้ใช้ทั่วไปแสดงข้อความสิทธิ์ไม่เพียงพอและรหัสออก 1 |
| -U | ส่งด้วย UDP โดยกำหนดพอร์ตปลายทางคงที่เป็น 53 | example.com แสดง * * * ตั้งแต่ฮอปที่เจ็ดถึงฮอปที่สิบ และไม่แสดงที่อยู่ปลายทาง |
📎 ตัวเลือกอื่น: ตามคู่มือทางการ
| ตัวเลือก | หน้าที่ |
|---|---|
| -w | กำหนดเวลาสูงสุดที่รอการตอบกลับ (ค่าเริ่มต้น 5 วินาที) |
| -p | กำหนดพอร์ต (UDP คือพอร์ตเริ่มต้น TCP คือพอร์ตปลายทางคงที่ ICMP คือหมายเลขลำดับเริ่มต้น) |
| -f | กำหนด TTL เริ่มต้น (ค่าเริ่มต้น 1) |
| -N | กำหนดจำนวนแพ็กเก็ตที่ส่งพร้อมกัน (ค่าเริ่มต้น 16 ลดลงเมื่อเราเตอร์จำกัดความเร็วการตอบกลับ) |
| -s | เปลี่ยนที่อยู่ต้นทางเป็นที่อยู่อินเทอร์เฟซอื่นของเซิร์ฟเวอร์ |
| -i | กำหนดอินเทอร์เฟซเครือข่ายที่ใช้ส่งแพ็กเก็ตออก (ค่าเริ่มต้นตามตารางเส้นทาง) |
| -4 | ส่งด้วย IPv4 เท่านั้น (ถ้าชื่อคืนทั้งที่อยู่ IPv4 และ IPv6 ค่าเริ่มต้นคือ IPv4) |
| -6 | ส่งด้วย IPv6 เท่านั้น |
🔲 ตัวจำลองคำสั่ง traceroute
ในตัวจำลองด้านล่าง คุณสามารถย่อเส้นทาง example.com ด้วย -m หรือลองพิมพ์ -n, -q, -f (ฮอปเริ่มต้น) และ -I, -T ที่ต้องใช้สิทธิ์กับ 127.0.0.1 และ localhost ได้เอง
4️⃣ ฮอปที่ไม่ตอบกลับใน traceroute
แม้จะเปลี่ยนวิธีการส่งได้ ฮอปที่ไม่ตอบกลับก็ยังคงเป็น [* * *] ตามคู่มือทางการ ดอกจันหนึ่งตัวคือหนึ่งแพ็กเก็ตที่ไม่ได้รับการตอบกลับภายในเวลาที่กำหนด และเวลารอสูงสุดคือ 5 วินาที
เมื่อเห็น * * * ที่ฮอปกลางทาง อาจเข้าใจได้ง่ายว่าเส้นทางขาดตรงจุดนั้น บนเส้นทาง example.com ที่ส่งด้วยวิธีเริ่มต้น มีเพียงฮอปที่ห้าที่เป็น * * * แต่แพ็กเก็ตผ่านฮอปนั้น ผ่านฮอปที่หก และถึงปลายทางที่ฮอปที่เจ็ด
-U คือวิธีส่งโดยกำหนดพอร์ตปลายทางคงที่เป็น 53 เมื่อส่งแพ็กเก็ตไปยัง example.com เดิมด้วย -U เราเตอร์ก่อนถึงปลายทางตอบกลับที่ฮอปที่หก จากนั้น * * * ต่อเนื่องตั้งแต่ฮอปที่เจ็ดถึงฮอปที่สิบ และไม่แสดงที่อยู่ปลายทาง
traceroute -U -n -m 10 example.comtraceroute to example.com (203.0.113.154), 10 hops max, 60 byte packets
1 192.0.2.1 0.176 ms 0.096 ms 0.661 ms
2 * * *
3 198.51.100.13 0.622 ms 0.586 ms 0.562 ms
4 198.51.100.49 0.898 ms 1.314 ms 198.51.100.53 1.159 ms
5 * * *
6 203.0.113.9 3.773 ms 203.0.113.27 3.275 ms 203.0.113.14 8.973 ms
7 * * *
8 * * *
9 * * *
10 * * *คู่มือทางการอธิบายว่าเมื่อส่งด้วย -U โปรแกรมฝั่งปลายทางมักไม่ตอบกลับ จึงมองไม่เห็นฮอปสุดท้าย บนเส้นทางที่ไฟร์วอลล์กรองพอร์ต UDP ของ traceroute หรือ ICMP ECHO ก็จะไม่มีการตอบกลับจากหลังไฟร์วอลล์นั้น และมีแต่ * * * ต่อเนื่องไป
| ตำแหน่งที่ * * * ปรากฏ | วิธีอ่าน | ตรวจสอบอีกครั้ง |
|---|---|---|
| ฮอปกลางทางหนึ่งฮอป | ฮอปนั้นไม่ตอบกลับ — ถ้าฮอปถัดไปตอบกลับ แสดงว่าแพ็กเก็ตผ่านฮอปนั้นไปแล้ว | ปล่อยไว้แล้วอ่านฮอปถัดไป |
| จากก่อนปลายทางจนถึง -m | ปลายทางหรือไฟร์วอลล์ที่อยู่ก่อนหน้ากรองแพ็กเก็ตหรือพอร์ตนั้น (ตามคู่มือทางการ) | วิธีเริ่มต้น / -T (root) / [-T -p พอร์ต] |
| ฮอปที่เปลี่ยนทุกครั้งที่รัน | ถ้าเราเตอร์จำกัดความเร็วการตอบกลับ ICMP การตอบกลับบางส่วนอาจหายไป (ตามคู่มือทางการ) | [-N 1] · [-w 5] |
ถ้าหยุดก่อนถึงปลายทาง ให้เปลี่ยนวิธีการส่งแล้วตรวจสอบอีกครั้ง คู่มือทางการแนะนำ -T ว่าเป็นวิธีที่ออกแบบมาให้ผ่านไฟร์วอลล์ สำหรับปลายทางที่มีพอร์ตเปิดชัดเจนอย่างเซิร์ฟเวอร์อีเมล การระบุพอร์ตนั้นแบบ [-T -p 25] อาจไปถึงได้แม้ -I จะไปไม่ถึง
* ที่ฮอปกลางทางอาจเปลี่ยนไปตามวิธีการส่งหรือการรันแต่ละครั้ง ฮอปที่สองตอบกลับเมื่อรันด้วยวิธีเริ่มต้น แต่แสดงเป็น * * * เมื่อรันด้วย -U คู่มือทางการระบุว่าถ้าเราเตอร์จำกัดความเร็วการตอบกลับ ICMP การตอบกลับบางส่วนอาจหายไป และแนะนำให้ลดจำนวนแพ็กเก็ตที่ส่งพร้อมกันด้วย [-N 1] นอกจากนี้ traceroute ยังลดเวลารอตามเวลาตอบกลับที่ได้รับก่อนหน้า หาก * ขึ้นเร็วเพราะเหตุนี้ ให้ระบุเวลารอค่าเดียวแบบ [-w 5] เพื่อปิดการคำนวณนั้น (ตามคู่มือทางการ)
5️⃣ tracepath แทน traceroute
บนเซิร์ฟเวอร์ที่ติดตั้งแพ็กเกจไม่ได้ ให้ตรวจสอบเส้นทางเดียวกันด้วยคำสั่ง tracepath เซิร์ฟเวอร์ AlmaLinux 9.8 ไม่มี traceroute แต่มี tracepath ใน iputils 20210202 ส่วนเซิร์ฟเวอร์ Debian 12 กลับไม่มี tracepath ตามคู่มือทางการของ tracepath คำสั่งนี้รันได้โดยไม่ต้องใช้สิทธิ์ root แต่มีตัวเลือกน้อยกว่าและส่งได้แค่ UDP ดังนั้นเมื่อคุณต้องการเปลี่ยนวิธีการส่งด้วย -I, -T หรือส่งหลายแพ็กเก็ตต่อฮอปด้วย -q เพื่อเปรียบเทียบ ให้ติดตั้งและใช้ traceroute
🔢 FAQ & เนื้อหาแนะนำ
เครือข่าย · การตั้งค่า
[Linux] คำสั่ง ip: จัดการอินเทอร์เฟซเครือข่ายและการตั้งค่า
คำสั่ง ip สำหรับตรวจสอบและจัดการสถานะอินเทอร์เฟซเครือข่าย ที่อยู่ IP และตารางเส้นทาง
ไฟร์วอลล์ · Ubuntu
[Ubuntu] การตั้งค่าไฟร์วอลล์ UFW บน Ubuntu
การตั้งค่าเพื่อเปิดใช้ UFW ไฟร์วอลล์เริ่มต้นของ Ubuntu และตรวจสอบสถานะกับกฎ
เครือข่าย · DNS
คำสั่ง host ของ Linux | คำสั่งค้นหา DNS
คำสั่ง host สำหรับสอบถาม DNS เพื่อแปลงชื่อโฮสต์เป็นที่อยู่ IP และที่อยู่ IP เป็นชื่อโฮสต์
ℹ️ ประกาศเรื่องลิงก์แอฟฟิลิเอต
เนื้อหาของเว็บไซต์นี้มีลิงก์แอฟฟิลิเอต หากผู้เข้าชมซื้อสินค้าหรือบริการผ่านลิงก์เหล่านี้ เว็บไซต์นี้จะได้รับค่าคอมมิชชันจากผู้ขาย ในกระบวนการนี้ ราคาที่ผู้ซื้อจ่าย(ราคาจะลดลงเมื่อมีโปรโมชัน↓)จะไม่สูงขึ้นแต่อย่างใด ราคา ส่วนลด และข้อมูลสต็อกที่แสดงเป็นข้อมูล ณ เวลาที่เขียนและอาจต่างจากความเป็นจริง โปรดตรวจสอบกับผู้ขายอีกครั้งก่อนซื้อ การเลือกและการประเมินสินค้าเขียนตามเกณฑ์ของเราเอง และการได้รับค่าคอมมิชชันหรือไม่ไม่มีผลต่อลำดับการแนะนำหรือเนื้อหาการประเมิน