ใช่และไม่. สองสิ่งที่แตกต่างที่เรียกว่าชื่อโฮสต์
ชื่อโฮสต์ "ภายใน"นั้นเป็นสตริงที่เก็บรักษาโดยเคอร์เนล นี้เป็นหนึ่งส่งกลับโดยhostname
คำสั่ง (หรือgethostname()
โทร) และก็ไม่ซ้ำกันภายในระบบ(*)
ส่วนใหญ่จะใช้เมื่อโปรแกรมต้องการเอาท์พุทตัวระบุสำหรับระบบที่รันอยู่ เช่น\h
ใน Bash's PS1
ขยายไปยังชื่อโฮสต์ ในทำนองเดียวกัน logfiles สไตล์ syslog ยังมีชื่อโฮสต์ในรายการบันทึก
(* แม้จะเป็นความคิดเห็นของสตีเฟ่นกิต แต่เนมสเปซสามารถใช้ในการแสดงชื่อโฮสต์ที่แตกต่างกันสำหรับกระบวนการในระบบเดียวกันซึ่งส่วนใหญ่ใช้สำหรับตู้คอนเทนเนอร์ซึ่งพยายามทำตัวเหมือนเป็นระบบที่แตกต่างกัน)
จากนั้นยังมีชื่อ DNSที่ระบบอื่นใช้เพื่อค้นหาที่อยู่ IP ของอีกชื่อหนึ่ง อาจมีชื่อ DNS มากกว่าหนึ่งชื่อที่ชี้ไปยังที่อยู่ IP เดียวกันดังนั้นโฮสต์เดียวกัน
ชื่อโฮสต์ภายในและชื่อ DNS ไม่จำเป็นต้องเหมือนกัน สมมติว่าคนที่มีเว็บเซิร์ฟเวอร์ของพวกเขาได้ตัดสินใจที่จะโทรorange
(*)192.0.2.9
กับที่อยู่ IP มันสามารถนำมาใช้โดเมนที่สองแตกต่างกันและ DNS จะได้รับการตั้งค่าให้มีwww.example.org
และwww.example.com
จุดทั้ง192.0.2.9
ในขณะที่ชื่อโฮสต์ภายในของระบบอาจจะหรือเพียงแค่orange.example.org
orange
ในกรณีนั้นการตั้งค่า DNS มักจะมีการค้นหาแบบย้อนกลับที่192.0.2.9
ชี้ไปที่ชื่อorange.example.org
กลับ แต่ก็ไม่มีอะไรจะบังคับ
(* เนื่องจากพวกเขาต้องการตั้งชื่อเซิร์ฟเวอร์ของตนหลังเกิดผลไม้บางคนอาจใช้webserver1
หรือเป็นเช่นนั้น แต่ประเด็นก็คือไม่จำเป็นต้องตั้งชื่อตามหนึ่งในโดเมนจริง)
นอกจากนั้นการโฮสต์เสมือนต้องการให้เบราว์เซอร์แจ้งชื่อเซิร์ฟเวอร์ของเว็บไซต์ที่พยายามเข้าถึงเว็บเซิร์ฟเวอร์ มิฉะนั้นเซิร์ฟเวอร์จะไม่ทราบว่าไซต์เสมือนใดที่ไคลเอ็นต์พยายามเข้าถึง HTTP มีHost
ส่วนหัวสำหรับสิ่งนั้น
สิ่งที่ทำให้แยกความแตกต่างระหว่างชื่อ DNS และชื่อโฮสต์ภายในคือโปรโตคอล mDNS
(นำไปใช้เช่นโดยavahi daemon ) และโปรโตคอลการค้นหาอื่น ๆ mDNS ทำให้โฮสต์สามารถสอบถามโฮสต์อื่นทั้งหมดในเครือข่ายเดียวกันเพื่อหาข้อมูลชื่อและทำให้ชื่อโฮสต์ของพวกเขาปรากฏบนโฮสต์อื่น ๆ โดยไม่ต้องตั้งค่าไว้ใน DNS อย่างชัดเจน