คนทำงานเน็ตเวิร์กต้องรู้เรื่อง IP Address กับ Subnet Mask ให้แม่น ไม่ว่าจะตั้งค่าเราเตอร์ วางแผนเน็ตเวิร์กในองค์กร หรือเตรียมสอบ CCNA บทความนี้สรุปวิธีคิดแบบเป็นขั้นตอน และมีตัวอย่างให้คำนวณตามได้ทันที
1. IP Address และ Subnet Mask คืออะไร
IP Address คือหมายเลขประจำตัวของอุปกรณ์บนเครือข่าย TCP/IP (IPv4) มีขนาด 32 บิต หรือ 4 ไบต์ เขียนเป็นเลขฐานสิบ 4 ชุดคั่นด้วยจุด เช่น 168.108.2.12
หมายเลขชุดนี้แบ่งเป็น 2 ส่วน
| ส่วน | หน้าที่ |
|---|---|
| Network Address (หรือ Subnet Address) | บอกว่าอุปกรณ์อยู่ในเน็ตเวิร์กไหน |
| Host Address | บอกว่าเป็นเครื่องไหนในเน็ตเวิร์กนั้น |
Subnet Mask คือค่าที่ต้องใส่คู่กับ IP Address ทุกครั้ง ใช้บอกว่าบิตไหนเป็น Network บิตไหนเป็น Host
- บิตที่เป็น 1 ใน Subnet Mask = ส่วน Network
- บิตที่เป็น 0 ใน Subnet Mask = ส่วน Host
เขียนแบบย่อ (CIDR / Prefix):
192.168.10.1/24หมายถึงใช้ 24 บิตแรกเป็น Network จึงมีค่าเท่ากับ Subnet Mask255.255.255.0ส่วน192.168.10.65/26จะมี Subnet Mask เป็น255.255.255.192
Note : IP Address เป็นแอดเดรสในเลเยอร์ 3 ที่เปลี่ยนได้ (ซอฟต์แวร์แอดเดรส) ส่วน MAC Address เป็นแอดเดรสที่ติดมากับการ์ดเน็ตเวิร์ก (ฮาร์ดแวร์แอดเดรส) ซึ่งเปลี่ยนไม่ได้
2. หา Network Address ด้วยการ AND
ขั้นตอน
- แปลง IP Address เป็นเลขฐานสอง
- แปลง Subnet Mask เป็นเลขฐานสอง
- นำมา Logical AND ทีละบิต ผลลัพธ์คือ Network Address
กฎของการ AND: ได้ 1 เฉพาะเมื่อ 1 AND 1 เท่านั้น นอกนั้นได้ 0 ทั้งหมด
ทางลัดที่ใช้ได้เกือบทุกครั้ง
- ไบต์ของ Mask ที่เป็น 255 → คัดลอกเลข IP ในไบต์นั้นลงมาได้เลย
- ไบต์ของ Mask ที่เป็น 0 → ผลลัพธ์ในไบต์นั้นเป็น 0 เสมอ
ตัวอย่าง: IP 168.108.9.1 Mask 255.255.0.0
IP Address : 168 . 108 . 9 . 1 Subnet Mask : 255 . 255 . 0 . 0 ----------------------------------------- Network : 168 . 108 . 0 . 0 ← Network Address Host : 9 . 1 ← Host Address
ผลคือเครื่องนี้อยู่ในเน็ตเวิร์ก 168.108.0.0 และมี Host Address เป็น 9.1
3. กฎพื้นฐานในการกำหนดแอดเดรส
- 1 เซกเมนต์ = 1 Network Address เซกเมนต์คือพื้นที่ที่คั่นด้วยเราเตอร์หรือสวิตช์เลเยอร์ 3 แต่ละเซกเมนต์ต้องมี Network Address เป็นของตัวเองและห้ามซ้ำกับเซกเมนต์อื่น
- 1 VLAN = 1 Network Address เครื่องที่อยู่ใน VLAN เดียวกันต้องใช้ Network Address เดียวกัน
- ลิงก์ WAN ระหว่างเราเตอร์ ก็นับเป็นอีก 1 เน็ตเวิร์ก ถึงจะมีแค่ 2 อินเตอร์เฟซก็ตาม
- Host Address ห้ามซ้ำกัน ในเน็ตเวิร์กเดียวกัน
- ส่วน Host ห้ามเป็น 0 ทั้งหมด เพราะค่านี้คือ Network Address
- ส่วน Host ห้ามเป็น 1 ทั้งหมด เพราะค่านี้คือ Broadcast Address ที่ใช้ส่งแพ็กเก็ตถึงทุกเครื่องในเน็ตเวิร์ก
4. IP Address แบ่งเป็นคลาส
IPv4 แบ่งเป็น 5 คลาส คือ A, B, C, D และ E เพื่อให้จัดการและวางแผนเน็ตเวิร์กได้ง่ายขึ้น วิธีดูคลาสที่ง่ายที่สุดคือ ดูบิตแรก ๆ ของไบต์แรก ถ้าขึ้นต้นด้วย 0, 10, 110, 1110 และ 1111 จะเป็นคลาส A, B, C, D และ E ตามลำดับ
| คลาส | ไบต์ 1 | ไบต์ 2 | ไบต์ 3 | ไบต์ 4 | ช่วง IP | ใช้ทำอะไร |
|---|---|---|---|---|---|---|
| A | 0xxxxxxx | xxxxxxxx | xxxxxxxx | xxxxxxxx | 0.0.0.0 – 127.255.255.255 | ใช้กับโฮสต์ |
| B | 10xxxxxx | xxxxxxxx | xxxxxxxx | xxxxxxxx | 128.0.0.0 – 191.255.255.255 | ใช้กับโฮสต์ |
| C | 110xxxxx | xxxxxxxx | xxxxxxxx | xxxxxxxx | 192.0.0.0 – 223.255.255.255 | ใช้กับโฮสต์ |
| D | 1110xxxx | xxxxxxxx | xxxxxxxx | xxxxxxxx | 224.0.0.0 – 239.255.255.255 | Multicast |
| E | 1111xxxx | xxxxxxxx | xxxxxxxx | xxxxxxxx | 240.0.0.0 – 255.255.255.255 | สงวนไว้ทดลอง |
□ ส่วน Network ■ ส่วน Host ■ Multicast / สงวนไว้ ตัวแดง = บิตนำหน้าที่บอกคลาส
Default Subnet Mask ของคลาส A, B และ C
| คลาส | บิต Network | Default Mask | ลักษณะเน็ตเวิร์ก |
|---|---|---|---|
| A | 8 บิต | 255.0.0.0 (/8) | มีจำนวนเน็ตเวิร์กน้อย แต่แต่ละเน็ตเวิร์กรองรับโฮสต์ได้มากที่สุด |
| B | 16 บิต | 255.255.0.0 (/16) | อยู่ตรงกลางระหว่างคลาส A กับ C |
| C | 24 บิต | 255.255.255.0 (/24) | มีจำนวนเน็ตเวิร์กมาก แต่แต่ละเน็ตเวิร์กรองรับโฮสต์ได้น้อย (254 เครื่อง) |
จำง่าย ๆ: ดูไบต์แรกก็รู้คลาสทันที 1–126 = A, 128–191 = B, 192–223 = C
• เฉพาะคลาส A, B และ C เท่านั้นที่ใช้กำหนดให้อินเตอร์เฟซของโฮสต์ได้ (คำว่าโฮสต์หมายถึงคอมพิวเตอร์หรือเราเตอร์)
• เลข 0 และ 127 ในไบต์แรกเป็นแอดเดรสพิเศษ โดย 127 สงวนไว้เป็น Loopback
เคล็ดลับการจัดสรร IP ในแต่ละเน็ตเวิร์ก เช่นเน็ตเวิร์ก 192.168.10.0/24
.1 – .10→ เซิร์ฟเวอร์.11 – .240→ เครื่องผู้ใช้ทั่วไป.241 – .254→ อุปกรณ์เน็ตเวิร์ก สวิตช์ และอินเตอร์เฟซเราเตอร์ (Gateway)
5. Subnetting: แบ่ง 1 เน็ตเวิร์กออกเป็นหลายเน็ตเวิร์กย่อย
ถ้าเราได้ Network Address มาเพียงก้อนเดียว เช่น 10.0.0.0/8 หรือ Public IP 203.155.10.33/28 จาก ISP แต่องค์กรมีหลายเซกเมนต์ เราต้องแบ่งก้อนนั้นเป็นซับเน็ตย่อย ๆ
หลักการ: ยืมบิตจากส่วน Host มาใช้เป็นส่วน Subnet แล้วแก้ Subnet Mask ให้ตรงกับจำนวนบิตที่ยืม
| 8 bit | N bit | 24 – N bit | |
| Network | Subnet | Host | Class A |
| 16 bit | N bit | 16 – N bit | |
| Network | Subnet | Host | Class B |
| 24 bit | N bit | 8 – N bit | |
| Network | Subnet | Host | Class C |
■ Network (กำหนดตามคลาส) ■ Subnet (ยืมมาจากส่วน Host) ■ Host (บิตที่เหลือ)
ยิ่งยืมบิตมากก็ยิ่งได้ จำนวนซับเน็ตมากขึ้น แต่ จำนวนโฮสต์ต่อซับเน็ตลดลง
สูตรที่ต้องจำ
| ต้องการหา | สูตร | หมายเหตุ |
|---|---|---|
| จำนวนซับเน็ต | 2N | N = จำนวนบิตที่ยืมมา |
| จำนวนซับเน็ต (แบบตำราสอบรุ่นเก่า) | 2N − 2 | ตัด Subnet Zero และ Subnet All-One ออก |
| จำนวนโฮสต์ต่อซับเน็ต | 2M − 2 | M = บิต Host ที่เหลือ (ต้องลบ 2 ทุกครั้ง) |
Subnet Zero / Subnet All-One คืออะไร
• Subnet Zero คือซับเน็ตที่บิต Subnet เป็น 0 ทั้งหมด มีเลขซ้ำกับ Network Address เดิม
• Subnet All-One คือซับเน็ตที่บิต Subnet เป็น 1 ทั้งหมด มี Broadcast Address ซ้ำกับ Broadcast ของเน็ตเวิร์กเดิม
ตำราและข้อสอบรุ่นเก่ากำหนดให้ตัด 2 ซับเน็ตนี้ทิ้ง แต่เราเตอร์ Cisco IOS รุ่นปัจจุบันเปิดใช้คำสั่งip subnet-zeroเป็นค่าเริ่มต้นอยู่แล้ว ในงานจริงจึงใช้ได้ทุกซับเน็ต (2N) ข้อควรระวังมีข้อเดียว คืออุปกรณ์หรือระบบปฏิบัติการรุ่นเก่าบางตัวอาจไม่รองรับ
6. ขั้นตอนออกแบบ Subnet 6 ขั้น
- นับจำนวนเซกเมนต์ ที่ต้องการ (รวม VLAN และลิงก์ WAN)
- ประมาณจำนวนเครื่อง ในเซกเมนต์ที่ใหญ่ที่สุด
- หาจำนวนบิตที่ต้องยืม (N) โดยต้องได้ซับเน็ตพอ และบิตที่เหลือต้องพอสำหรับโฮสต์
- คำนวณ Subnet Mask ใหม่ ซึ่งทุกเซกเมนต์ใช้ค่าเดียวกัน
- หา Subnet Address ทั้งหมด
- หาช่วง IP ที่ใช้ได้ ในแต่ละซับเน็ต แล้วแจกจ่ายให้อุปกรณ์
ควรเผื่อจำนวนซับเน็ตและจำนวนโฮสต์สำหรับการขยายในอนาคตด้วย
7. ตัวอย่างการคำนวณ Subnet แบบละเอียด: แบ่ง 168.108.0.0 (คลาส B)
โจทย์: มีเน็ตเวิร์ก 168.108.0.0/16 ต้องการแบ่งเป็น 5 ซับเน็ต โดยแต่ละซับเน็ตมีเครื่องประมาณ 100–130 เครื่อง
ขั้นที่ 1: หาจำนวนบิตที่ต้องยืม
ใช้สูตรตำราสอบ 2N − 2 ≥ 5
- N = 1 → 2 − 2 = 0
- N = 2 → 4 − 2 = 2
- N = 3 → 8 − 2 = 6
ต้องยืม 3 บิต และตรวจสอบจำนวนโฮสต์: เหลือบิต Host 16 − 3 = 13 บิต → 213 − 2 = 8,190 เครื่อง พอสำหรับ 130 เครื่องแน่นอน
ขั้นที่ 2: หา Subnet Mask ใหม่
นำ 3 บิตแรกของส่วน Host มาเปลี่ยนเป็น 1
เดิม : 11111111.11111111.00000000.00000000 = 255.255.0.0 ใหม่ : 11111111.11111111.11100000.00000000 = 255.255.224.0 (/19) ↑ 3 บิตที่ยืมมาจาก Host
■ Network (16 บิต) ■ Subnet (3 บิตที่ยืมมา) ■ Host (13 บิตที่เหลือ)
ขั้นที่ 3: หา Subnet Address
ไล่ค่า 3 บิตที่ยืมมา (000 ถึง 111) ในไบต์ที่ 3
| บิต Subnet | Subnet Address | หมายเหตุ |
|---|---|---|
| 000 | 168.108.0.0 | Subnet Zero |
| 001 | 168.108.32.0 | |
| 010 | 168.108.64.0 | |
| 011 | 168.108.96.0 | |
| 100 | 168.108.128.0 | |
| 101 | 168.108.160.0 | |
| 110 | 168.108.192.0 | |
| 111 | 168.108.224.0 | Subnet All-One |
สังเกต: Subnet Address เพิ่มขึ้นทีละ 32 เพราะ 256 − 224 = 32 ตัวเลขนี้เรียกว่า ขนาดบล็อก (Block Size)
ขั้นที่ 4: หาช่วง IP ในแต่ละซับเน็ต
| Subnet | IP แรก | IP สุดท้าย | Broadcast |
|---|---|---|---|
| 168.108.32.0 | 168.108.32.1 | 168.108.63.254 | 168.108.63.255 |
| 168.108.64.0 | 168.108.64.1 | 168.108.95.254 | 168.108.95.255 |
| 168.108.96.0 | 168.108.96.1 | 168.108.127.254 | 168.108.127.255 |
| 168.108.128.0 | 168.108.128.1 | 168.108.159.254 | 168.108.159.255 |
| 168.108.160.0 | 168.108.160.1 | 168.108.191.254 | 168.108.191.255 |
| 168.108.192.0 | 168.108.192.1 | 168.108.223.254 | 168.108.223.255 |
ตัวอย่างการแจกจ่ายในซับเน็ตแรก (Mask 255.255.224.0)
168.108.32.1 – .10→ เซิร์ฟเวอร์168.108.32.11 – .200→ เครื่องผู้ใช้168.108.32.201 – .254→ อุปกรณ์เน็ตเวิร์ก โดยให้168.108.32.254เป็น Default Gateway
8. ตัวอย่างคลาส C ที่เจอบ่อย (192.168.100.0)
| Prefix | Subnet Mask | บิตยืม | ซับเน็ต (สอบ / งานจริง) | โฮสต์ต่อซับเน็ต | Block Size |
|---|---|---|---|---|---|
| /26 | 255.255.255.192 | 2 | 2 / 4 | 62 | 64 |
| /27 | 255.255.255.224 | 3 | 6 / 8 | 30 | 32 |
| /28 | 255.255.255.240 | 4 | 14 / 16 | 14 | 16 |
| /29 | 255.255.255.248 | 5 | 30 / 32 | 6 | 8 |
| /30 | 255.255.255.252 | 6 | 62 / 64 | 2 | 4 |
ตัวอย่าง /27 (255.255.255.224)
ซับเน็ตเพิ่มขึ้นทีละ 32
| Subnet | .32 | .64 | .96 | .128 | .160 | .192 |
|---|---|---|---|---|---|---|
| โฮสต์แรก | .33 | .65 | .97 | .129 | .161 | .193 |
| โฮสต์สุดท้าย | .62 | .94 | .126 | .158 | .190 | .222 |
| Broadcast | .63 | .95 | .127 | .159 | .191 | .223 |
วิธีอ่านตาราง: ซับเน็ต 192.168.100.32 มีโฮสต์ตั้งแต่ .33 ถึง .62 และมี Broadcast คือ .63 (ในงานจริงยังใช้ซับเน็ต .0 ที่เป็น Subnet Zero และ .224 ที่เป็น Subnet All-One ได้อีก 2 ซับเน็ต)
ตัวอย่าง /26 (255.255.255.192)
192.168.100.64→ โฮสต์.65 – .126และ Broadcast.127192.168.100.128→ โฮสต์.129 – .190และ Broadcast.191
ตัวอย่าง /29 (255.255.255.248)
ซับเน็ตเพิ่มขึ้นทีละ 8 คือ .8, .16, .24, … , .240
192.168.100.8→ โฮสต์.9 – .14และ Broadcast.15192.168.100.16→ โฮสต์.17 – .22และ Broadcast.23
9. เทคนิคคำนวณย้อนกลับ: รู้ IP แล้วหาซับเน็ต
ในงานจริงเรามักรู้แค่ IP Address กับ Subnet Mask ของเครื่อง เช่น 192.168.100.33 / 255.255.255.224 แล้วอยากรู้ว่าเครื่องนี้อยู่ซับเน็ตไหน ใช้ IP ตัวไหนได้บ้าง และ Broadcast คืออะไร
นึกภาพง่าย ๆ: ให้ไบต์สุดท้ายเป็นถนนที่มีบ้านเลขที่ 0 ถึง 255 แล้วแบ่งถนนเป็นซอยขนาดเท่ากัน
• ขนาดซอย = Block Size (ซอยละกี่หลัง)
• บ้านหลังแรกของซอย = Network Address (ใช้เป็นชื่อซอย ให้เครื่องใช้ไม่ได้)
• บ้านหลังสุดท้ายของซอย = Broadcast Address (ใช้ประกาศถึงทุกหลัง ให้เครื่องใช้ไม่ได้)
• บ้านที่เหลือตรงกลาง = IP ที่แจกให้เครื่องได้
ตัวอย่าง: เครื่องมี IP 192.168.100.33 และ Subnet Mask 255.255.255.224
ขั้นที่ 1: หาขนาดซอย (Block Size)
ดู Subnet Mask ไบต์สุดท้ายในที่นี้คือ 224 แล้วเอา 256 ลบ
256 − 224 = 32 แปลว่าแต่ละซับเน็ตมี 32 หมายเลข
ขั้นที่ 2: แบ่งถนนเป็นซอย ซอยละ 32
เริ่มจาก 0 แล้วบวกทีละ 32 จะได้จุดเริ่มต้นของแต่ละซอยคือ 0, 32, 64, 96, 128, 160, 192, 224
| 0–31 | 32–63 | 64–95 | 96–127 | 128–159 | 160–191 | 192–223 | 224–255 |
| ↑ .33 อยู่ซอยนี้ | |||||||
ขั้นที่ 3: ดูว่า IP ของเราอยู่ซอยไหน
เลข 33 อยู่ระหว่าง 32 กับ 63 ดังนั้นเครื่องนี้อยู่ในซับเน็ต 192.168.100.32
ขั้นที่ 4: อ่านค่าจากซอยนั้น
| .32 | .33 – .62 | .63 |
| Network (ตัวแรก) | IP ที่แจกให้เครื่องได้ (30 หมายเลข) | Broadcast (ตัวสุดท้าย) |
ทางลัดหา Broadcast: เอาจุดเริ่มต้นของซอยถัดไปลบ 1 เช่น ซอยถัดไปเริ่มที่ 64 ดังนั้น Broadcast คือ 64 − 1 = 63
ลองทำอีก 2 ตัวอย่าง
| โจทย์ | 1. Block Size | 2. หา Subnet Address | 3. Subnet Address | 4. IP ที่ใช้ได้ | Broadcast |
|---|---|---|---|---|---|
| 192.168.100.35 / 255.255.255.240 | 256 − 240 = 16 | 0, 16, 32, 48, … | .32 (35 อยู่ระหว่าง 32–47) | .33 – .46 | 48 − 1 = .47 |
| 192.168.100.17 / 255.255.255.252 | 256 − 252 = 4 | 0, 4, 8, 12, 16, 20, … | .16 (17 อยู่ระหว่าง 16–19) | .17 – .18 | 20 − 1 = .19 |
ซับเน็ต /30 มี IP ที่ใช้ได้แค่ 2 หมายเลข จึงเหมาะกับ ลิงก์ WAN แบบ Point-to-Point ที่มีแค่เราเตอร์ 2 ตัวต่อกันโดยตรง เช่น
10.0.0.0/30ให้เราเตอร์ A ใช้.1และเราเตอร์ B ใช้.2พอดี ไม่เหลือ IP ทิ้ง
10. Private Address: IP สำหรับใช้ภายในองค์กร
เน็ตเวิร์กที่ไม่ได้ต่ออินเทอร์เน็ตโดยตรงไม่จำเป็นต้องขอ Public IP จาก ISP สามารถใช้แอดเดรสส่วนตัวตามมาตรฐาน RFC 1918 ได้
| ช่วง IP | คลาส | ขนาด |
|---|---|---|
| 10.0.0.0 – 10.255.255.255 | A | 1 เน็ตเวิร์ก คลาส A |
| 172.16.0.0 – 172.31.255.255 | B | 16 เน็ตเวิร์ก คลาส B |
| 192.168.0.0 – 192.168.255.255 | C | 256 เน็ตเวิร์ก คลาส C |
- องค์กรใหญ่นิยมใช้
10.0.0.0/8แล้วนำไปทำ Subnet ให้แต่ละเซกเมนต์ - Private IP ออกอินเทอร์เน็ตโดยตรงไม่ได้ ต้องใช้ NAT (Network Address Translation) แปลงเป็น Public IP ก่อน
11. ข้อจำกัดของ FLSM และทางออก
การออกแบบที่ ทุกซับเน็ตใช้ Subnet Mask เท่ากัน เรียกว่า FLSM (Fixed Length Subnet Mask) มีข้อเสียคือ
- ถ้าเลือก Mask ให้ได้ซับเน็ตพอ อาจได้โฮสต์ไม่พอ หรือในทางกลับกัน
- ถ้าแต่ละเซกเมนต์มีจำนวนเครื่องต่างกันมาก จะเหลือ IP ที่ไม่ได้ใช้จำนวนมาก เช่น ลิงก์ WAN ใช้แค่ 2 IP แต่ได้ซับเน็ตขนาด 8,190 โฮสต์
ทางออก คือ VLSM (Variable Length Subnet Mask) ซึ่งให้แต่ละซับเน็ตใช้ Mask ต่างกันตามขนาดที่ต้องการ ใช้ IP ได้คุ้มค่ากว่ามาก
สรุปท้ายบท
- Network Address = IP AND Subnet Mask
- ดูคลาสจากไบต์แรก: 1–126 = A, 128–191 = B, 192–223 = C
- จำนวนซับเน็ต = 2N (รุ่นเก่าใช้ 2N − 2)
- จำนวนโฮสต์ = 2M − 2 เสมอ
- Block Size = 256 − ค่าไบต์สุดท้ายของ Subnet Mask
- IP ที่ใช้ไม่ได้: ตัวแรกของซับเน็ต (Network) และตัวสุดท้าย (Broadcast)
- Private IP: 10.x.x.x, 172.16–31.x.x, 192.168.x.
บทความนี้เป็นการสรุปหลักคิดและเทคนิคการคำนวณ IP Address ตั้งแต่พื้นฐาน Subnet Mask การแยกคลาส ไปจนถึงการทำ Subnetting และเทคนิคคำนวณย้อนกลับ เพื่อให้เพื่อน ๆ และผู้ดูแลระบบนำไปใช้วางแผนแอดเดรสในองค์กรได้อย่างเป็นระบบ ลดปัญหา IP ชนกันหรือ IP ไม่พอใช้ และไล่เช็กปัญหาหน้างานได้รวดเร็วขึ้นครับสำหรับใครที่กำลังเตรียมสอบ CCNA แนะนำให้ลองหยิบตัวอย่างในบทความไปฝึกคำนวณด้วยตัวเองซ้ำ ๆ โดยเฉพาะเทคนิค “256 ลบ Mask” เพราะเมื่อคล่องแล้วจะช่วยประหยัดเวลาในห้องสอบได้มาก
ขอขอบคุณหนังสือ “เรียนรู้ระบบเน็ตเวิร์กจากอุปกรณ์ของ Cisco ภาคปฏิบัติ” โดย คุณเอกสิทธิ์ วิริยจารี ที่อธิบายเรื่องนี้ไว้อย่างละเอียดและเข้าใจง่าย จนเป็นแรงบันดาลใจและเป็นแนวทางสำคัญในการเรียบเรียงบทความนี้ สำหรับใครที่อยากศึกษาเชิงลึกเพิ่มเติม ทั้งเรื่อง Routing, VLSM และการคอนฟิกอุปกรณ์ Cisco แบบลงมือทำจริง แนะนำให้หาหนังสือเล่มนี้มาอ่านเลยครับ
หากมีคำถามหรืออยากให้เขียนเรื่องไหนต่อ คอมเมนต์ทิ้งไว้ได้เลยครับ แล้วพบกันใหม่ในบทความหน้า