ข้ามไปยังเนื้อหา

04 · THE CONNECTED PLANET

จากเครื่องของฉันสู่คนทั้งโลก

LOADING MODULE 04 · THE CONNECTED PLANET · CHAPTER 01/07

จากเครื่องของฉันสู่คนทั้งโลก

“ทำไมเว็บที่เปิดได้บนเครื่องเรา เพื่อนกลับเปิดไม่ได้?”

  • อ่านราว 17 นาที
  • LAB 04 · เผยแพร่สู่โลก

คุณเพิ่งสร้างเว็บไซต์หน้าแรกในชีวิตเสร็จ เปิดดูบนจอแล้วสวยงาม ทุกปุ่มกดได้ คุณจึงคัดลอกที่อยู่ในแถบด้านบน localhost:3000 ส่งให้เพื่อนอย่างภูมิใจ ไม่กี่วินาทีต่อมาเพื่อนตอบกลับมาว่า "เปิดไม่ได้นะ"

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

ปริศนาแรกทำไมเพื่อนเปิดไม่ได้?

ลองดูที่อยู่ที่คุณส่งไปอีกครั้ง คำว่า localhost ไม่ใช่ชื่อของคอมพิวเตอร์คุณ แต่เป็นคำพิเศษที่คอมพิวเตอร์ทุกเครื่องเข้าใจตรงกันว่า "เครื่องนี้เอง" ส่วนตัวเลข 3000 คือหมายเลข ที่โปรแกรมเว็บไซต์ของคุณรอรับการเชื่อมต่ออยู่

หยุดคิดสักนิด

ถ้า localhost แปลว่า "เครื่องนี้เอง" เมื่อเพื่อนพิมพ์ localhost:3000 บนเครื่องของเพื่อน เบราว์เซอร์ของเพื่อนจะวิ่งไปหาเครื่องไหน?

ทดลอง · ใครพิมพ์ localhost:3000?

เครื่องของฉันรันเว็บที่ :3000ว่างเปล่าเครื่องของเพื่อนไม่ได้รันเว็บไม่มีเส้นทางถึงกัน

กดเลือกเครื่องด้านบน แล้วดูว่าคำขอเดินทางไปที่ไหน

ที่อยู่เดียวกัน พิมพ์คนละเครื่อง ผลลัพธ์ต่างกัน
localhostเครื่องนี้เอง
ชื่อพิเศษที่ชี้กลับมาหาเครื่องที่ใช้งานอยู่เสมอ นักพัฒนาใช้ทดสอบเว็บไซต์บนเครื่องตัวเองก่อนเผยแพร่ ไม่มีใครภายนอกเข้าถึงได้ผ่านชื่อนี้
เจาะลึก · สำหรับคนที่อยากรู้มากกว่านี้แล้วทำไมที่อยู่เว็บทั่วไปไม่มีเลข port?
มีเสมอ แต่ถูกซ่อนไว้ เว็บที่ขึ้นต้นด้วย https:// ใช้ช่อง 443 และ http:// ใช้ช่อง 80 เป็นค่าตั้งต้นที่ทุกเบราว์เซอร์รู้กันอยู่แล้ว จึงไม่ต้องพิมพ์ ส่วนเลข 3000 เป็นช่องที่เครื่องมือของนักพัฒนาหลายตัวนิยมใช้ตอนทดสอบบนเครื่องตัวเอง

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

ชิ้นส่วนที่ 1บ้านที่ไม่เคยปิดไฟ: Hosting

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

Hostingบริการที่อยู่ของเว็บไซต์
บริการให้เช่าพื้นที่บนเซิร์ฟเวอร์ ผู้ให้บริการดูแลไฟฟ้า ความเย็น สายอินเทอร์เน็ต และเครื่อง เราแค่อัปโหลดเว็บไซต์ขึ้นไป

ความเชื่อที่พบบ่อย

“เว็บไซต์ลอยอยู่บน "อินเทอร์เน็ต" หรือบน "คลาวด์" ไม่ได้อยู่ในเครื่องไหนเป็นพิเศษ”

เจาะลึก · สำหรับคนที่อยากรู้มากกว่านี้ทำไมไม่เปิดคอมพิวเตอร์ที่บ้านให้คนอื่นเข้ามาเลย
ทำได้ในทางเทคนิค แต่มีอุปสรรคหลายชั้น เครื่องในบ้านมักใช้ที่อยู่ภายในที่ใช้ได้แค่ในบ้าน และเราเตอร์จะไม่ยอมให้คนข้างนอกเชื่อมต่อเข้ามาเองถ้าไม่ตั้งค่าเพิ่ม ที่อยู่สาธารณะของบ้านอาจเปลี่ยนไปเรื่อย ๆ ไฟดับหรือเน็ตหลุดเว็บก็ล่ม และการเปิดเครื่องส่วนตัวให้คนแปลกหน้าเข้าถึงมีความเสี่ยงด้านความปลอดภัย บทที่ 2 จะอธิบายเรื่องที่อยู่ภายในกับที่อยู่สาธารณะอย่างละเอียด

เมื่อเว็บไซต์ขึ้นไปอยู่บนเซิร์ฟเวอร์ มันจะมีที่อยู่สาธารณะเป็นตัวเลข เรียกว่า IP Address ในบทนี้เราใช้ตัวอย่าง 203.0.113.10 ซึ่งเป็นช่วงตัวเลขที่ถูกกันไว้ให้ใช้ในเอกสารและตัวอย่างโดยเฉพาะ ไม่ใช่เครื่องจริงของใคร

IP Addressที่อยู่ของเครื่องบนเครือข่าย
ชุดตัวเลขที่ระบุเครื่องหนึ่งเครื่องบนอินเทอร์เน็ต เช่น 203.0.113.10 อุปกรณ์เครือข่ายใช้ตัวเลขนี้ส่งข้อมูลไปให้ถูกเครื่อง เหมือนเลขที่บ้านบนซองจดหมาย

ชิ้นส่วนที่ 2 และ 3ชื่อที่คนจำได้ กับสมุดที่อยู่ของโลก

ถึงตรงนี้ใครพิมพ์ 203.0.113.10 ก็เปิดเว็บไซต์ได้แล้ว แต่ไม่มีใครอยากจำตัวเลขแบบนี้ เราจึงจด ชื่อโดเมน อย่าง internetmachine.example เป็นชื่อที่อ่านออกเสียงได้และจำง่าย

Domainชื่อโดเมน
ชื่อที่คนใช้เรียกเว็บไซต์แทนตัวเลข เช่น example.com เราจดชื่อผ่านผู้ให้บริการจดโดเมน และต้องต่ออายุเป็นระยะ ชื่อจึงเป็นของเราตราบที่ยังจ่ายค่าต่ออายุ

แต่การจดชื่ออย่างเดียวยังไม่พอ ชื่อที่เพิ่งจดยังไม่รู้ว่าต้องพาคนไปที่เครื่องไหน เราต้องไปเขียนบันทึกไว้ในระบบที่ชื่อว่า DNS ว่าชื่อนี้หมายถึงตัวเลขอะไร

DNS (Domain Name System)ระบบแปลชื่อโดเมน
ระบบที่แปลชื่อโดเมนให้เป็น IP Address ทุกครั้งที่เราพิมพ์ชื่อเว็บไซต์ เบราว์เซอร์จะถาม DNS ก่อนว่าชื่อนี้คือเครื่องหมายเลขอะไร
TEXT
ชื่อ                        ประเภท   ค่า
internetmachine.example.    A        203.0.113.10
ระเบียน DNS หนึ่งบรรทัด: ระเบียนประเภท A บอกว่าชื่อนี้ชี้ไปที่ IP Address ใด

ประกอบร่างเมื่อมีคนพิมพ์ชื่อเว็บไซต์ของคุณ

ตอนนี้ชิ้นส่วนครบพอให้คนทั้งโลกเปิดเว็บได้แล้ว ลองไล่ดูว่าเกิดอะไรขึ้นในเสี้ยววินาทีที่ผู้ใช้ในญี่ปุ่นพิมพ์ internetmachine.example แล้วกด Enter

  1. เบราว์เซอร์ถาม DNS ว่า "internetmachine.example คือเครื่องหมายเลขอะไร?" และได้คำตอบว่า 203.0.113.10
  2. เบราว์เซอร์เชื่อมต่อไปที่เครื่องหมายเลขนั้น แล้วส่ง Request ขอหน้าแรกของเว็บไซต์ (เล่ม 02 เล่าเรื่อง Request และ Response อย่างละเอียด)
  3. เซิร์ฟเวอร์ตอบกลับด้วย Response ที่มีไฟล์ HTML, CSS และ JavaScript
  4. เบราว์เซอร์อ่านไฟล์เหล่านั้นแล้ววาดหน้าเว็บขึ้นจอ (เรื่องที่เล่ม 01 พาแกะดู)

ติดตามทีละก้าว

ผู้ใช้ในญี่ปุ่นพิมพ์ internetmachine.example

ก้าว 1/4
  1. เบราว์เซอร์
  2. DNS
  3. เซิร์ฟเวอร์

เบราว์เซอร์ → DNSถามว่าชื่อนี้คือเครื่องไหน

เบราว์เซอร์ยังไม่รู้ว่า internetmachine.example อยู่ที่ไหน จึงถาม DNS ก่อนว่าชื่อนี้คือเครื่องหมายเลขอะไร

เป้าหมาย: กด 'ก้าวถัดไป' จนหน้าเว็บกลับมาถึงเบราว์เซอร์

ภาพ 1.2 · จากการพิมพ์ชื่อเว็บ จนหน้าเว็บขึ้นจอ

หยุดคิดสักนิด

สมมติวันหนึ่งคุณย้ายเว็บไซต์ไปอยู่เซิร์ฟเวอร์เครื่องใหม่ที่มีเลข IP ใหม่ ผู้ใช้ต้องเปลี่ยนไปจำชื่อเว็บใหม่หรือไม่?

ลงมือห้องทดลอง: เผยแพร่เว็บไซต์ของคุณสู่โลก

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

ข้ามห้องทดลองนี้ ไปอ่านต่อ →
EXPERIMENT · ห้องทดลอง 04ลองกดไปทีละขั้นด้วยปุ่ม "ถัดไป" ก่อน แล้วอ่านคำอธิบายทุกขั้น เมื่อถึงขั้น Browser → Server ให้เลื่อนลงไปที่ส่วนทดลองโหลด ลองเพิ่มผู้ใช้จนเซิร์ฟเวอร์เกินกำลัง แล้วหาทางแก้ด้วยการเพิ่มเซิร์ฟเวอร์ หรือเปิด CDN ในขั้นสุดท้าย
04

LAB 04 — Global Network Observatory

เผยแพร่สู่โลก

IDLESimulation
แบบจำลองเพื่อการเรียนรู้: ที่อยู่ IP ชื่อโดเมน จำนวนคำขอ ความจุ และเวลาตอบในห้องนี้เป็นตัวเลขสมมติ ใช้ดู แนวโน้ม เท่านั้น ไม่ใช่การทำนายประสิทธิภาพของเซิร์ฟเวอร์จริง
ไม่ปลอดภัยhttp://localhost:3000
localhostเครื่องผู้พัฒนาไทยญี่ปุ่นเยอรมนีเคนยาสหรัฐฯบราซิลDNSสมุดที่อยู่ยังไม่มีเซิร์ฟเวอร์

ใครเปิดได้เปิดได้คนเดียว: ผู้พัฒนา

ขั้นที่ 0 · เว็บไซต์ยังอยู่บนเครื่องผู้พัฒนา

เว็บไซต์ทำงานอยู่ที่ localhost:3000 คำว่า localhost แปลว่า 'เครื่องนี้เอง' เบราว์เซอร์บนเครื่องเราจึงเปิดได้ แต่ถ้าเพื่อนพิมพ์คำเดียวกัน เบราว์เซอร์ของเพื่อนจะไปหาเครื่องของเพื่อนเอง ไม่ใช่เครื่องเรา

คำสั่งเปิดเว็บบนเครื่องตัวเอง

$ npm run dev
> พร้อมใช้งานที่ http://localhost:3000

ทดลองโหลด: เมื่อคนมาพร้อมกัน

Load & Capacity · ตัวเลขสมมติ
ตอนนี้ยังไม่มีใครนอกจากผู้พัฒนาเปิดเว็บได้ จึงยังไม่มีโหลดให้ทดลอง เผยแพร่ไปจนถึงขั้น Browser → Server ก่อน แล้วส่วนนี้จะเปิดให้ปรับจำนวนผู้ใช้

ถ้าคุณลองครบ คุณน่าจะสังเกตเห็นสองเรื่องที่ยังไม่ได้อธิบาย: แม่กุญแจที่โผล่ขึ้นมาในขั้น HTTPS และกล่อง CDN ที่ทำให้คนในบราซิลโหลดรูปเร็วขึ้นมาก สองหัวข้อถัดไปจะอธิบายว่ามันทำงานอย่างไร

ชิ้นส่วนที่ 4แม่กุญแจหน้าชื่อเว็บ: HTTPS

ระหว่างเครื่องผู้ใช้กับเซิร์ฟเวอร์ ข้อมูลวิ่งผ่านอุปกรณ์หลายตัว เช่น เราเตอร์ไวไฟในร้านกาแฟ และอุปกรณ์ของผู้ให้บริการอินเทอร์เน็ตหลายราย ถ้าข้อมูลเดินทางแบบไม่เข้ารหัส (HTTP ธรรมดา) อุปกรณ์ระหว่างทางสามารถอ่านหรือแอบแก้ไขข้อมูลได้ รวมถึงรหัสผ่านที่คุณพิมพ์

HTTPSHTTP แบบปลอดภัย
การส่ง Request และ Response ผ่านการเชื่อมต่อที่เข้ารหัส (ด้วยมาตรฐานชื่อ TLS) เซิร์ฟเวอร์ต้องมีใบรับรองที่ยืนยันว่าเป็นเจ้าของชื่อโดเมนนั้นจริง เบราว์เซอร์จึงแสดงแม่กุญแจ

ชิ้นส่วนที่ 5ระยะทาง คนจำนวนมาก และ CDN

ข้อมูลในสายใยแก้วนำแสงวิ่งเร็วมาก ราว 200,000 กิโลเมตรต่อวินาที แต่โลกก็กว้างมากเช่นกัน กรุงเทพฯ กับเซาเปาโลในบราซิลห่างกันเป็นเส้นตรงราว 16,000 กิโลเมตร คำขอที่ต้องไปแล้วกลับจึงใช้เวลาอย่างน้อยราว 160 มิลลิวินาทีในทางทฤษฎี และของจริงมักนานกว่านั้น เพราะสายเคเบิลไม่ได้วิ่งเป็นเส้นตรงและต้องผ่านอุปกรณ์หลายต่อ ช่วงเวลารอแบบนี้เรียกว่า

หน้าเว็บหนึ่งหน้ามักประกอบด้วยไฟล์หลายสิบไฟล์ ความหน่วงเล็ก ๆ จึงสะสมจนรู้สึกได้ ทางแก้คือนำสำเนาของไฟล์ที่ไม่ค่อยเปลี่ยนไปไว้ใกล้ผู้ใช้ตั้งแต่แรก

CDN (Content Delivery Network)เครือข่ายส่งเนื้อหา
เครือข่ายเซิร์ฟเวอร์ปลายทาง (edge) ที่ตั้งอยู่หลายประเทศ เก็บสำเนาไฟล์อย่างรูปภาพ CSS และ JavaScript ไว้ใกล้ผู้ใช้ ผู้ใช้ได้ไฟล์เร็วขึ้น และเซิร์ฟเวอร์ต้นทางรับงานน้อยลง

CDN ยังช่วยเรื่องที่สำคัญไม่แพ้กัน คือ ภาระงาน (Load) เซิร์ฟเวอร์ทุกเครื่องมี ความจุ (Capacity) จำกัด คือรับคำขอได้แค่จำนวนหนึ่งต่อวินาที ถ้าคำขอมาเกินกว่านั้น คำขอที่เกินต้องรอคิว และถ้าคิวเต็ม เซิร์ฟเวอร์จะปฏิเสธด้วยรหัส 503 Service Unavailable ซึ่งแปลว่า "ตอนนี้ไม่ว่างให้บริการ" นี่คือสิ่งที่เกิดกับเว็บขายบัตรคอนเสิร์ตในนาทีที่เปิดขาย

  • ลดงานที่มาถึงต้นทาง ด้วย CDN ให้ edge ตอบไฟล์คงที่แทน
  • เพิ่มจำนวนเซิร์ฟเวอร์ แล้วใช้ แบ่งคำขอให้ช่วยกันตอบ
  • ทำให้แต่ละคำขอใช้งานน้อยลง เช่น เก็บผลลัพธ์ที่คำนวณแล้วไว้ใช้ซ้ำ (เล่มนี้บทที่ 6 จะลงลึก)

หยุดคิดสักนิด

ในห้องทดลอง ถ้าเปิด CDN แล้ว ทำไมผู้ใช้จำนวนมากยังทำให้เซิร์ฟเวอร์ต้นทางเกินกำลังได้อยู่ดี?

ภาพใหญ่สี่เล่ม หนึ่งเครื่องจักร

ลองย้อนดูเส้นทางทั้งหมด หน้าเว็บที่คุณเห็นถูกประกอบจากไฟล์ฝั่ง Frontend (เล่ม 01) เมื่อคุณกดปุ่ม คำขอวิ่งไปให้ Backend ตัดสินใจ (เล่ม 02) ข้อมูลที่ต้องจำถูกเก็บใน Database (เล่ม 03) และทั้งหมดนี้ไปถึงคุณได้เพราะ Hosting, Domain, DNS, HTTPS และ CDN ที่เราเพิ่งประกอบกันในบทนี้ ทุกครั้งที่คุณเปิดเว็บไซต์ เครื่องจักรทั้งระบบนี้ทำงานพร้อมกันในเวลาไม่ถึงวินาที

ก่อนสรุป ลองทดสอบว่าคุณจำได้ไหมว่าชิ้นส่วนแต่ละชิ้นแก้ปัญหาอะไร

ลองจัดกลุ่ม

ชิ้นส่วนไหนแก้ปัญหานี้?

ถูก 0/6
  1. 01ปิดคอมพิวเตอร์ตอนกลางคืน แล้วไม่มีใครเปิดเว็บได้

  2. 02เว็บต้องมีที่อยู่สาธารณะที่คนทั้งโลกส่งคำขอมาถึงได้

  3. 03ไม่มีใครจำตัวเลข 203.0.113.10 ได้

  4. 04ย้ายเว็บไปเครื่องใหม่ แต่อยากให้ผู้ใช้พิมพ์ชื่อเดิม

  5. 05ลูกค้ากรอกรหัสผ่านบนไวไฟร้านกาแฟ

  6. 06คนในบราซิลโหลดรูปจากเซิร์ฟเวอร์ในเอเชียช้ามาก

เป้าหมาย: จับคู่ปัญหาทั้ง 6 ข้อกับชิ้นส่วนที่ถูกต้อง

ภาพ 1.3 · ปัญหาแต่ละข้อ แก้ด้วยชิ้นส่วนไหน

SYSTEM SUMMARY

สรุปบทนี้

  • 01localhost แปลว่า "เครื่องนี้เอง" เว็บที่รันบนเครื่องเราจึงมีแค่เราที่เปิดได้
  • 02Hosting คือการนำเว็บไซต์ไปไว้บนเซิร์ฟเวอร์ที่เปิดตลอดเวลาและมี IP Address สาธารณะ
  • 03Domain คือชื่อที่คนจำได้ ส่วน DNS คือระบบที่แปลชื่อนั้นเป็น IP Address
  • 04เบราว์เซอร์ถาม DNS ก่อน แล้วจึงส่ง Request ไปที่เซิร์ฟเวอร์ และได้ Response กลับมา
  • 05HTTPS เข้ารหัสข้อมูลระหว่างทางและยืนยันชื่อโดเมน แต่ไม่ได้รับรองว่าเว็บไซต์ซื่อสัตย์
  • 06CDN เก็บสำเนาไฟล์ไว้ใกล้ผู้ใช้ ช่วยลดความหน่วงและลดภาระของเซิร์ฟเวอร์ต้นทาง
  • 07เซิร์ฟเวอร์มีความจุจำกัด งานที่เกินจะต้องรอคิว หรือถูกปฏิเสธด้วยรหัส 503
ข้ามแบบทดสอบ ไปอ่านต่อ →

ท้ายบท

เช็กความเข้าใจ

ตอบแล้ว 0/4

ไม่มีคะแนนเก็บ ไม่มีใครเห็นคำตอบนอกจากคุณ ทุกตัวเลือกมีเหตุผลอธิบาย ทั้งข้อที่ถูกและข้อที่ผิด

คำถามข้อ 1

ข้อ 1

คุณส่งลิงก์ localhost:3000 ให้เพื่อน แล้วเพื่อนเปิดไม่ได้ สาเหตุที่แท้จริงคืออะไร?

คำถามข้อ 2

ข้อ 2

หน้าที่หลักของ DNS คืออะไร?

คำถามข้อ 3

ข้อ 3

เมื่อเห็นแม่กุญแจหน้าชื่อเว็บไซต์ ข้อใดสรุปได้ถูกต้อง?

คำถามข้อ 4

ข้อ 4

เว็บขายบัตรกำลังจะมีคนเข้าพร้อมกันจำนวนมาก ข้อใดช่วยลดจำนวนคำขอขอรูปภาพและไฟล์ CSS ที่วิ่งไปถึงเซิร์ฟเวอร์ต้นทางได้โดยตรง?

ขั้นสุดท้าย ลองอธิบายด้วยคำพูดของคุณเอง ระบบไม่ได้อ่านหรือให้คะแนน แต่การเรียบเรียงเองบอกได้ดีที่สุดว่าเราเข้าใจจริงหรือยัง

อธิบายด้วยคำพูดของคุณเอง

ข้อความนี้อยู่แค่ในหน้าจอของคุณ ไม่ถูกส่งหรือบันทึกไว้ที่ไหน และระบบไม่ได้ให้คะแนน

เขียนอีกนิด (0/30 ตัวอักษร)

เส้นทางการเรียนรู้

0/4

  1. ตามคำขอตั้งแต่พิมพ์ชื่อจนหน้าเว็บขึ้นจอ (ยังไม่ได้ทำ)ภาพ 1.2: กด 'ก้าวถัดไป' จนถึงก้าวสุดท้าย
  2. จับคู่ปัญหากับชิ้นส่วนที่แก้ได้ครบ 6 ข้อ (ยังไม่ได้ทำ)ภาพ 1.3: เลือกชิ้นส่วนให้ถูกครบทุกข้อ
  3. ตอบแบบทดสอบท้ายบทครบทุกข้อ (ยังไม่ได้ทำ)ตอบครบทุกข้อ ผิดได้ ไม่มีผลกับการติ๊ก
  4. อธิบายด้วยคำพูดของตัวเอง (ยังไม่ได้ทำ)เขียนอย่างน้อย 30 ตัวอักษร แล้วกด 'เทียบกับคำอธิบายตัวอย่าง'

รายการนี้บันทึกสิ่งที่คุณได้ลงมือทำในเบราว์เซอร์นี้ ไม่ใช่ใบรับรองว่าเข้าใจแล้ว วิธีวัดที่ดีที่สุดคือลองอธิบายให้คนอื่นฟัง ล้างบันทึกได้ที่ Machine Lens แท็บ DATABASE

NEXT DISCOVERY · จบบทที่ 1

บทที่ 2: ที่อยู่ของทุกเครื่อง

IP Address และการเดินทางของคำถาม DNS ตั้งแต่เครื่องเราไปจนถึงเซิร์ฟเวอร์ราก

กำลังตรวจสิทธิ์