เหตุใด Localhost IP 127.0.0.1

Geeks ทั่วโลกรู้จักโฮสต์ในพื้นที่ของตนเป็น 127.0.0.1 แต่ทำไมที่อยู่เฉพาะของที่อยู่ที่มีอยู่ทั้งหมดจึงถูกสงวนไว้สำหรับโฮสต์ในพื้นที่ อ่านต่อเพื่อเจาะลึกประวัติของโฮสต์ในท้องถิ่น

ภาพโดย GMPhoenix; มีให้เป็นภาพพื้นหลังที่นี่

เซสชันคำถามและคำตอบของวันนี้มาถึงเราโดยได้รับความอนุเคราะห์จาก SuperUser ซึ่งเป็นแผนกย่อยของ Stack Exchange ซึ่งเป็นการรวมกลุ่มเว็บไซต์ถาม & ตอบในชุมชน

คำถาม

ผู้อ่าน SuperUser Roee Adler สงสัยเกี่ยวกับ IP localhost ที่เป็นค่าเริ่มต้นได้ตั้งคำถามต่อไปนี้กับชุมชน:

ฉันสงสัยว่าอะไรคือที่มาของการตัดสินใจสร้าง  localhostที่อยู่ IP  127.0.0.1ของ “ ความหมาย” ของ  127อะไร? “ ความหมาย” ของ  0.0.1อะไร?

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

คำตอบ

ผู้ร่วมให้ข้อมูลหลายคนเข้ามาตอบคำถามของ Roee การมีส่วนร่วมของพวกเขาแต่ละคนช่วยให้กระจ่างมากขึ้นว่า 127.0.0.1 เป็นสถานที่ที่เราทุกคนเรียกว่าบ้านได้อย่างไร John T เขียน:

127 เป็นหมายเลขเครือข่ายสุดท้ายในเครือข่ายคลาส A ที่มีซับเน็ตมาสก์เป็น  255.0.0.0127.0.0.1 เป็นที่อยู่แรกที่กำหนดได้ในเครือข่ายย่อย 127.0.0.0 ไม่สามารถใช้งานได้เนื่องจากจะเป็นหมายเลขสายไฟ แต่การใช้ตัวเลขอื่น ๆ 127.0.0.1ส่วนเจ้าภาพควรปรับการทำงานและเปลี่ยนกลับไปใช้ คุณสามารถลองด้วยตัวเองโดยการส่ง Ping  127.1.1.1 หากคุณต้องการ ทำไมพวกเขาถึงรอจนถึงหมายเลขเครือข่ายสุดท้ายที่จะใช้สิ่งนี้? ฉันไม่คิดว่ามันเป็นเอกสาร

Hyperslug ทำการสำรวจข้อมูลที่เก็บถาวรโดยการขุดผ่านบันทึกข้อตกลงเก่าในหัวข้อ:

การกล่าวถึงเร็วที่สุดที่ฉันสามารถหาได้เกี่ยวกับงานมอบหมายของ 127 เนื่องจากการย้อนกลับคือพฤศจิกายน 1986 RFC 990 ที่เขียนโดย Reynolds และ Postel:

ศูนย์ที่อยู่จะถูกตีความว่ามีความหมายว่า "นี่" เช่นเดียวกับ "เครือข่ายนี้"

ตัวอย่างเช่นที่อยู่ 0.0.0.37 สามารถแปลได้ว่าหมายถึงโฮสต์ 37 บนเครือข่ายนี้

เครือข่ายคลาส A หมายเลข 127 ได้รับการกำหนดฟังก์ชัน“ ย้อนกลับ” นั่นคือดาตาแกรมที่ส่งโดยโปรโตคอลระดับสูงกว่าไปยังที่อยู่เครือข่าย 127 ควรวนกลับภายในโฮสต์ ไม่ควรมีการ "ส่ง" ดาตาแกรมไปยังที่อยู่เครือข่าย 127 บนเครือข่ายใด ๆ

แม้ในช่วงต้นเดือนกันยายนปี 1981 RFC 790, 0 และ 127 ก็ถูกจองไว้แล้ว:

000.rrr.rrr.rrr สงวนไว้ [JBP] ... 127.rrr.rrr.rrr สงวนไว้ [JBP]

0 และ 127 เป็นเครือข่าย Class A ที่สงวนไว้เท่านั้นภายในปี 1981 0 ถูกใช้สำหรับชี้ไปที่โฮสต์เฉพาะดังนั้นจึงเหลือ 127 สำหรับการวนกลับ

ฉันรู้ว่าสิ่งนี้ไม่ได้ตอบคำถาม แต่มันก็ย้อนกลับไปเท่าที่ฉันจะขุดได้ อาจมีเหตุผลมากกว่าที่จะเลือก 1.0.0.0 สำหรับลูปแบ็ค แต่นั่นได้มอบให้กับ BBN Packet Radio Network แล้ว

ในขณะที่เราทุกคนรู้จักและชื่นชอบ 127.0.0.1 ในฐานะ localhost แต่ก็น่าสังเกตว่าจะไม่เป็น localhost ตลอดไป 127.0.0.1 เป็นวิธีกำหนด localhost ในการสื่อสาร IPv4 และเนื่องจาก IPv6 เข้ามาช้าจึงจะถูกกำหนดโดยหมายเลขที่เข้าใจง่ายมากขึ้น: 0: 0: 0: 0: 0: 0: 0: 1

มีสิ่งที่จะเพิ่มคำอธิบาย? ปิดเสียงในความคิดเห็น ต้องการอ่านคำตอบเพิ่มเติมจากผู้ใช้ Stack Exchange ที่เชี่ยวชาญด้านเทคโนโลยีอื่น ๆ หรือไม่? ดูหัวข้อสนทนาฉบับเต็มได้ที่นี่