ความแตกต่างระหว่าง. local, .home และ .lan คืออะไร


24

ฉันจะระบุเครื่องต่าง ๆ ในเครือข่ายของฉันได้อย่างไร

ฉันมักจะใช้.localคำต่อท้ายเพื่อพูดคุยกับคอมพิวเตอร์บนเครือข่ายท้องถิ่นของฉันก่อน ด้วยเราเตอร์ใหม่ แต่.localแทบจะไม่ทำงาน (แม้ว่าบางครั้ง) ฉันพบว่า.homeและ.lanทั้งคู่มักจะใช้งานได้ แต่ไม่เสมอไป

.-------.   .--------.                 .-----.
| modem |---| router |))))))(wifi))))))| foo |
.-------.   .--------.         v       .-----.
   ||            |             v
 /_^_^_\         |             \))))))).-----.
/ cloud \        |                     | bar |
 \-_-_-/      .-----.                  .-----.
              | baz |
              .-----.

ดังนั้นจาก terminal บนfooฉันสามารถลอง:

ssh bar.local
ssh bar.home
ssh bar.lan

ssh baz.local
ssh baz.home
ssh baz.lan

และบางครั้งคำต่อท้ายเหล่านี้บางอันทำงานได้ แต่บางคนก็ไม่รู้ แต่ก็ไม่รู้ว่าจะทำนายได้อย่างไร

foo, barและbazเป็นระบบ Linux หรือ Android ที่ทันสมัยทั้งหมดและกล่อง Linux ทั้งหมดมี (หรือสามารถมี) avahi-daemon หรือแพ็คเกจอื่น ๆ ที่สมเหตุสมผล

(ฉันไม่ต้องการตั้งค่าที่อยู่ IP แบบคงที่: ฉันต้องการใช้ DHCP ต่อไป (จากเราเตอร์) สำหรับแต่ละเครื่องและแม้ว่าฉันจะตกลงกับที่อยู่แบบคงที่ฉันต้องการป้อนชื่อโฮสต์ใน เครื่อง Android ที่ไม่ได้ใช้งานซึ่งฉันไม่สามารถแก้ไขไฟล์โฮสต์เพื่อแมปชื่อโฮสต์ที่เลือกกับที่อยู่ IP ได้)


คุณใช้อะไรใน/etc/resolv.confเซิร์ฟเวอร์ชื่อ? นอกจากนี้หากคุณdigติดตั้งสิ่งที่คุณจะได้รับผลเมื่อคุณรันdig +trace baz.local?
Red Cricket

คุณควรเพิ่มข้อมูลเพิ่มเติม (เช่นให้ไว้ในความคิดเห็นล่าสุด) ในคำถามของคุณ เพิ่มเราเตอร์ที่คุณใช้ด้วย
maxschlepzig

คำตอบ:


21

มี RFCs ที่ระบุว่าไม่มีและ.lan .homeดังนั้นจึงขึ้นอยู่กับผู้ขายของเราเตอร์ว่ามี TLDs หลอก (ชื่อโดเมนระดับบนสุด) เป็นค่าเริ่มต้น

ตัวอย่างเช่นผู้จำหน่ายเราเตอร์ของฉัน (AVM) ดูเหมือนว่าจะใช้เป็น.fritz.boxค่าเริ่มต้น

.localใช้โดยmDNS (multicast DNS)โปรโตคอลที่ออกแบบโดย Apple การใช้example.localงานได้เฉพาะบนระบบ (และสำหรับปลายทาง) ที่มี mDNS daemon ทำงานอยู่ (เช่น MacOSX, การกระจาย Linux ปัจจุบันเช่น Ubuntu / Fedora)

คุณสามารถใช้ dhcp ต่อไปได้ แต่บางทีคุณต้องกำหนดค่าเราเตอร์ของคุณสักหน่อย เราเตอร์ส่วนใหญ่ให้คุณกำหนดค่าสิ่งต่าง ๆ เช่นชื่อโดเมนสำหรับเครือข่าย

โปรดทราบว่าการใช้ TLD หลอกเป็นสิ่งที่อันตราย - .lanดูเหมือนจะเป็นที่นิยม - และดีกว่า.local(เพราะไม่ได้ขัดแย้งกับ mDNSs .local) - แต่ไม่มีการรับประกันว่า ICANN จะไม่แนะนำเป็น TLD ใหม่ในบางจุด

อัปเดต 2019 : ตรงประเด็น.boxไม่ใช่หลอก TLD อีกต่อไป ICANN มอบสิทธิ์. boxในปี 2559

ดังนั้นจึงเหมาะสมที่จะได้รับชื่อโดเมนจริง - และใช้โดเมนย่อยของมันสำหรับข้อมูลส่วนตัวเช่นเมื่อexample.orgคุณสามารถใช้โดเมนของคุณ:

lan.example.org
internal.example.org
...

2
tools.ietf.org/html/rfc6762จริง ๆพูดถึงทั้ง. llan และ. home
Powerman

6
@Permanerman, ดี RFC6762 กล่าวถึง.lanและ.homeในภาคผนวก G แต่มันไม่ได้ระบุการใช้งานหรือความหมายของพวกเขา แต่เป็นเพียงรายการพวกเขาเป็นส่วนหนึ่งของความคิดเห็น: 'เราไม่แนะนำให้ใช้โดเมนระดับบนสุดที่ไม่ได้ลงทะเบียนเลย แต่หากผู้ให้บริการเครือข่ายตัดสินใจทำเช่นนี้โดเมนระดับบนสุดต่อไปนี้จะถูกใช้บนเครือข่ายส่วนตัวภายใน ปัญหาที่เกิดจากการพยายามใช้ ".local" ซ้ำ เพื่อจุดประสงค์นี้ '
maxschlepzig

2
ณ เดือนกุมภาพันธ์ 2018 .home, .corpและ.mailได้รับการพิจารณาความปลอดภัย: icann.org/resources/board-material/... ใช้.lanจะยังคงได้รับการพิจารณาความเสี่ยง
Daniel Martin

1
การปรับปรุงอื่น: RFC8375 (พฤษภาคม 2018) ระบุ.home.arpaสำหรับเครือข่ายในบ้านที่กำหนดขอบเขต ( tools.ietf.org/html/rfc8375 )
John O'M

0

ตามที่ฉันเข้าใจสิ่งต่าง ๆ หากคุณใช้หนึ่งในที่อยู่ตัวเลขส่วนตัวของเครือข่ายRFC-1918สิ่งเหล่านี้ได้รับการรับรองโดย "กฎ" ทางอินเทอร์เน็ตซึ่งจะไม่กำหนดเส้นทางนอกเหนือจากเครือข่ายย่อยของตนเอง

บางชื่อถูกสงวนไว้สำหรับการใช้งานพิเศษ ( {ไม่ถูกต้อง. localhost. ทดสอบ. ใน RFC6761} {ท้องถิ่น. ใน RFC6762} {หัวหอม. ใน RFC7686} เว็บไซต์ IANA )

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

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.