Port 0 ใช้สำหรับอะไร?

พอร์ต 0 ไม่ใช่หมายเลขพอร์ตจริง แต่มีจุดประสงค์สำหรับ

ไม่เหมือน หมายเลขพอร์ต ส่วนใหญ่ พอร์ต 0 เป็นพอร์ตที่สงวนไว้ในเครือข่าย TCP / IP ซึ่งหมายความว่าไม่ควรใช้ในข้อความ TCP หรือ UDP

พอร์ต 0 มีความสำคัญเป็นพิเศษในการเขียนโปรแกรม เครือข่าย โดยเฉพาะการเขียนโปรแกรมซ็อกเก็ตยูนิกซ์เพื่อขอพอร์ตแบบไดนามิกที่จัดสรรโดยระบบ ศูนย์พอร์ตเป็นเหมือนพอร์ต wildcard ที่บอกให้ระบบหาหมายเลขพอร์ตที่เหมาะสม

พอร์ตเครือข่ายใน TCP และ UDP มีตั้งแต่ 0 ถึง 65535 หมายเลขพอร์ตในช่วงระหว่าง 0 ถึง 1023 หมายถึงพอร์ตระบบหรือพอร์ตที่รู้จักกันดี Internet Assigned Numbers Authority (IANA) จะเก็บรายชื่ออย่างเป็นทางการเกี่ยวกับการใช้หมายเลขพอร์ตเหล่านี้บนอินเทอร์เน็ตและพอร์ตระบบ 0 จะไม่ถูกนำมาใช้

วิธี Port 0 ทำงานในการเขียนโปรแกรมเครือข่าย

การกำหนดค่าการเชื่อมต่อ ซ็อกเก็ตเครือข่าย ใหม่กำหนดให้หมายเลขพอร์ตหนึ่งถูกจัดสรรทั้งฝั่งต้นทางและปลายทาง ข้อความ TCP หรือ UDP ที่ส่งโดยผู้ริเริ่ม (ต้นฉบับ) มีทั้งหมายเลขพอร์ตเพื่อให้ผู้รับข้อความ (ปลายทาง) สามารถส่งข้อความตอบกลับไปยังปลายทางปลายทางของโพรโทคอลที่ถูกต้องได้

IANA มีพอร์ตระบบที่กำหนดไว้ล่วงหน้าสำหรับแอ็พพลิเคชันพื้นฐานของอินเทอร์เน็ตเช่นเว็บเซิร์ฟเวอร์ (พอร์ต 80) แต่หลายแอ็พพลิเคชันเครือข่าย TCP และ UDP ไม่มีพอร์ตระบบของตัวเองและต้องได้รับหนึ่งจาก ระบบปฏิบัติการ ของอุปกรณ์ทุกครั้งที่เริ่มทำงาน

เมื่อต้องการจัดสรรหมายเลขพอร์ตต้นทางแอพพลิเคชันจะเรียกใช้ฟังก์ชันเครือข่าย TCP / IP เช่น bind () เพื่อร้องขอ แอ็พพลิเคชันสามารถจัดหาหมายเลขคงที่ (hard-coded) เพื่อผูก () หากต้องการจะขอหมายเลขเฉพาะ แต่การร้องขอดังกล่าวอาจล้มเหลวเพราะอาจมีการเรียกใช้แอ็พพลิเคชันอื่น ๆ

หรือสามารถให้พอร์ต 0 เพื่อผูก () เป็นพารามิเตอร์การเชื่อมต่อแทนได้ ที่เรียกใช้ระบบปฏิบัติการเพื่อค้นหาและส่งคืนพอร์ตที่เหมาะสมที่เหมาะสมในช่วงหมายเลขพอร์ตแบบไดนามิกของ TCP / IP

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

ระบบปฏิบัติการยูนิกซ์, วินโดวส์และระบบปฏิบัติการอื่น ๆ มีความแตกต่างกันเล็กน้อยในการจัดการพอร์ต 0 แต่ต้องมีการใช้สนธิสัญญาทั่วไปเช่นเดียวกัน

พอร์ต 0 และความปลอดภัยของเครือข่าย

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

ผู้ให้บริการอินเทอร์เน็ต จำนวนมาก (ISP) บล็อกการรับส่งข้อมูลบนพอร์ต 0 (ทั้งข้อความขาเข้าและขาออก) เพื่อช่วยป้องกันการโจมตีเหล่านี้