วิธีเข้าถึงโฮสต์ในเครือข่ายเดียวกันด้วยชื่อโฮสต์


11

ฉันมีเครือข่ายที่เชื่อมต่อโฮสต์สองแห่ง ฉันต้องการเข้าถึงโฮสต์อื่นจากหนึ่งในนั้นโดยใช้ชื่อโฮสต์ ฉันเพิ่งค้นพบ ".local" โดเมนซึ่งสามารถใช้ได้ผ่านและavahi /etc/nsswitch.confแต่มันไม่ได้ตั้งค่าวิธีนี้บนเซิร์ฟเวอร์ของฉัน และฉันไม่ต้องการสร้างรายการในเซิร์ฟเวอร์ dns ของฉัน มีวิธีอื่นที่จะทำเช่นนั้น?


Avahi mDNS นั้นค่อนข้างดีสำหรับคุณ ดูคำตอบเกี่ยวกับ/etc/nsswitch.confวิธีกำหนดค่า
ulidtko

คำตอบ:


10

/etc/nsswitch.conf ของคุณควรมีสิ่งนี้สำหรับ mDNS (avahi):

hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4

เพียงติดตั้งavahi-daemonบนเครื่องที่คุณต้องการคุยกับคนอื่นและคุณควรตั้งให้ใช้ HOSTNAME.local ดังนี้:

ssh yourmachine.local

2
นี่คือคำตอบที่ฉันต้องการฉันสามารถโหวตได้สองครั้ง
ulidtko

2

อีกทางเลือกหนึ่งคือการเพิ่มรายการใน/etc/hostsไฟล์ของคุณ:

gksudo gedit /etc/hosts

รายการใช้รูปแบบหรือเพียงแค่123.123.123.123 host.domain123.123.123.123 host

ถ้าคุณทำอย่างนั้นตอนนี้คุณสามารถเป็นตัวอย่างssh hostและมันจะเชื่อมต่อกับ123.123.123.123


ขออภัยฉันลืมพูดถึงว่าฉันไม่ต้องการทำด้วยเหตุผลสองประการ ประการแรกด้วยเหตุผลด้านความปลอดภัยเครื่องเหล่านี้เป็นเซิร์ฟเวอร์ และฉันคิดว่ามันอาจเป็นปัญหา ประการที่สองฉันรู้ว่าโฮสต์ของฉันจะเปลี่ยนที่อยู่ ip เร็ว ๆ นี้ และฉันไม่ต้องการอัปเดตข้อมูลนี้ทุกครั้ง แก้ไข: เหตุผลข้อที่สามฉันใช้ dhcp ดังนั้นผู้จัดการเครือข่ายจะสร้างใหม่บ่อยครั้ง แต่ฉันรู้ว่ามีเคล็ดลับที่จะให้มันทำ
benzen

1

ฉันพบวิธีแก้ไขปัญหาอื่น การใช้ไฟล์/etc/dhccp3/dhcient.conf มีบรรทัดเริ่มต้นเช่นนี้send host-name สามารถแก้ไขได้เพื่อส่งชื่อโฮสต์ 'server1'

วิธีนี้ดูดี แต่ฉันไม่รู้ว่าทุกเครื่องที่ใช้ dns เดียวกันจะเห็นชื่อโฮสต์ "server1" ของฉันหรือไม่

อีกด้านที่ไม่ดีสำหรับโซลูชันนี้ฉันต้องระบุชื่อโฮสต์ที่นี่และใน /etc/hosts

ฉันเพิ่งรู้ว่าไฟล์นี้ ( /etc/dhcp3/dhclient.conf) ไม่ใช่สคริปต์ดังนั้นฉันไม่สามารถใช้ตัวแปร environnement เพื่อเติมบรรทัดนี้อย่างถูกต้อง


1

คุณสามารถให้ DHCP แบบไดนามิกเพิ่มรายการใน DNS แทนตัวคุณเอง


1
แต่ฉันไม่ต้องการให้พวกเขาเปิดเผยกับอินเทอร์เน็ตทั้งหมดเพียงเพื่อค้นหาพวกเขาในเครือข่ายท้องถิ่นของฉัน
benzen

0

หากใช้ avahi-daemon คุณอาจต้องคัดลอก ssh.services ไปยัง / etc / avahi / services ในเหมือง

sudo cp /usr/share/doc/avahi-daemon/examples/ssh.service /etc/avahi/services/

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