ทบทวนพื้นฐานเครือข่าย

Docker ระดับกลาง

Mike Metzger

Data Engineering Consultant

เครือข่ายคืออะไร?

  • เครือข่ายคอมพิวเตอร์คือระบบที่สื่อสารกันผ่านวิธีที่กำหนดไว้
  • การสื่อสารมีหลายระดับ ทั้งทางกายภาพและทางลอจิก เรียกว่า โปรโตคอล
  • เครือข่ายทางกายภาพทั่วไป ได้แก่ Ethernet และ WiFi
  • เครือข่ายทางลอจิก ได้แก่ TCP/IP, HTTP และ SMTP
  • เครือข่ายถูกแบ่งออกเป็นชั้น มักเรียกว่า networking stack

ฮาร์ดแวร์เครือข่ายคอมพิวเตอร์

1 Photo by Jordan Harrison on Unsplash.
Docker ระดับกลาง

คำศัพท์เครือข่าย

  • Host
    • คำทั่วไปสำหรับคอมพิวเตอร์
  • Network
    • กลุ่มของ host
  • Interface
    • การเชื่อมต่อจริงระหว่าง host กับเครือข่าย เช่น Ethernet หรือ WiFi
    • สามารถเป็นแบบเสมือน (virtual) ซึ่งทำงานในซอฟต์แวร์ทั้งหมด
  • LAN
    • Local Area Network หรือกลุ่มคอมพิวเตอร์ในพื้นที่เดียวกัน
  • VLAN
    • Virtual LAN หรือ LAN แบบซอฟต์แวร์
Docker ระดับกลาง

Internet Protocol

  • IP
    • Internet Protocol วิธีเชื่อมต่อระหว่างเครือข่ายโดยใช้ IP address
  • IPv4
    • IP เวอร์ชันที่รองรับ 4.2 พันล้าน address ปัจจุบันใช้หมดแล้ว
  • IPv6
    • IP เวอร์ชันใหม่ รองรับ 2^128 address กำลังถูกนำมาใช้งาน
IPv4: 10.10.10.1

IPv6: 2001:0db8:85a3:0000:0000:8a2e:0370:7334
Docker ระดับกลาง

TCP / UDP

  • TCP
    • Transmission Control Protocol ใช้สื่อสารระหว่าง host บนเครือข่าย IP อย่างน่าเชื่อถือ
  • UDP
    • User Datagram Protocol ใช้สื่อสารระหว่าง host บน IP เมื่อไม่ต้องการความน่าเชื่อถือ
Docker ระดับกลาง

Ports

  • Port
    • ระบุบริการบน host มีค่าระหว่าง 0 ถึง 65535 ใช้สื่อสารระหว่าง host ผ่าน TCP หรือ UDP
    • Port ต่ำกว่า 1024 มักสงวนไว้สำหรับบัญชีที่มีสิทธิ์พิเศษ
    • ค่าที่สูงกว่า 1024 มักเป็น ephemeral หรือ temporary port
    • แอปพลิเคชัน listen บน port
Docker ระดับกลาง

Application protocols

  • HTTP/HTTPS
    • Application protocol สำหรับเว็บ ใช้ TCP port 80 เป็นค่าเริ่มต้น เวอร์ชันที่ปลอดภัยใช้ TCP port 443
  • SMTP
    • โปรโตคอลส่งอีเมล ผ่าน TCP port 25
  • SNMP
    • โปรโตคอลจัดการเครือข่าย ผ่าน UDP port 161
Docker ระดับกลาง

Docker กับเครือข่าย

  • สื่อสารระหว่าง container ได้
  • สื่อสารกับระบบ host ได้
  • ขึ้นอยู่กับการตั้งค่า สามารถสื่อสารกับ host ภายนอกได้
  • การสื่อสารทั่วไปทำได้โดยการ expose port จาก container ไปยัง host
  • ทำหน้าที่เป็นตัวแปลงระหว่าง container และ host
Docker ระดับกลาง

Docker กับ IP

  • Container มี IP address ได้
  • ใช้ ifconfig <interface> หรือ ip addr show <interface> ภายใน container เพื่อดู address
  • ใช้ ping -c <x> <host> เพื่อตรวจสอบการเชื่อมต่อ
    • ping -c 3 myhost

ifconfig

Docker ระดับกลาง

มาฝึกกันเถอะ!

Docker ระดับกลาง

Preparing Video For Download...