Dipecahkan: pastikan libnss-mdns diinstal!
Saya mengalami masalah menggunakan SSH'ing dari netbook ke desktop saya menggunakan nama host .local. Sering kali, saya harus mengatur ulang router yang saya gunakan, yang mengatur ulang alamat yang diberikannya ke perangkat saya, jadi beberapa saat yang lalu saya mengatur Avahi untuk mengatasi * ini. File /etc/avahi/services/ssh.service adalah file standar yang disalin dari dokumentasi:
<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<!-- See avahi.service(5) for more information about this configuration file -->
<service-group>
<name replace-wildcards="yes">%h</name>
<service>
<type>_ssh._tcp</type>
<port>22</port>
</service>
</service-group>
Ini dulu berfungsi dengan baik, tapi sekarang karena beberapa alasan ketika saya mencoba ssh dari netbook ke desktop saya, saya mendapatkan pesan kesalahan berikut (perhatikan saya mengubah nama host pc saya di output ini):
user@netbook>> ssh pc.local -vvv
OpenSSH_6.2p2 Ubuntu-6ubuntu0.3, OpenSSL 1.0.1e 11 Feb 2013
debug1: Reading configuration data /home/username/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug2: ssh_connect: needpriv 0
ssh: Could not resolve hostname pc.local: Name or service not known
Saya dapat ssh dari netbook ke PC saya ketika saya memasukkan alamat IP secara manual, dan ketika saya sudah mengatur / etc / hosts dengan benar (sehingga daemon pada PC saya berfungsi dengan baik), itu hanya berhenti bekerja ketika saya mencoba untuk gunakan alamat lokal. SSH'ing di arah lain (PC-> netbook) berfungsi dengan baik, bahkan ketika menggunakan nama host .local. Avahi juga tampaknya berfungsi dengan baik:
user@netbook>> avahi-browse -a -t+
+ wlan0 IPv6 netbook SSH Remote Terminal local
+ wlan0 IPv6 netbook [<MAC address>] Workstation local
+ wlan0 IPv6 netbook Remote Disk Management local
+ wlan0 IPv4 netbook SSH Remote Terminal local
+ wlan0 IPv4 netbook [<MAC address>] Workstation local
+ wlan0 IPv4 netbook Remote Disk Management local
+ wlan0 IPv4 pc SSH Remote Terminal local
+ wlan0 IPv4 pc [<MAC address>] Workstation local
+ wlan0 IPv4 pc Remote Disk Management local
+ wlan0 IPv6 pc SSH Remote Terminal local
+ wlan0 IPv6 pc [<MAC address>] Workstation local
+ wlan0 IPv6 pc Remote Disk Management local
Netbook menjalankan Lubuntu 13.10; perhatikan bahwa saya memang berubah ke Lubuntu baru-baru ini, dan saya hanya ingat melihat kesalahan ini dengan Lubuntu dan bukan dengan Ubuntu biasa. Desktop saya menjalankan Ubuntu 13.10.
Bantuan apa pun akan dihargai!
* Saya sadar bahwa dapat mengatur router saya untuk secara permanen memberikan alamat yang ditetapkan untuk kedua perangkat, dan saya akan melakukannya jika saya tidak dapat menyelesaikan masalah ini, tetapi saya lebih suka mencoba dan memperbaikinya daripada menyelesaikannya.
ETA: Ping PC dari netbook dengan .local hostname tidak berfungsi (host tidak dikenal).
Sunting 2: Isi dari /etc/nsswitch.conf
# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.
passwd: compat
group: compat
shadow: compat
hosts: files mdns4_minimal dns [NOTFOUND=return] mdns4
networks: files
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis
ping pc.local
?
strace ssh user@foo
juga akan menunjukkan bahwa kontak ssh avahi-daemon dengan permintaan untuk menyelesaikan foo
, yang waktu habis ... Dalam kasus saya berubah /etc/nsswitch.conf
: Dari " hosts: files mdns4_minimal [NOTFOUND=return] dns
" menjadi " hosts: files dns mdns4_minimal
". Tidak yakin mengapa avahi daemon seharusnya TIDAK meminta server DNS, mungkin harus melakukan sesuatu dengan ketidakcocokan antara DNS multicast dan DNS pada LAN (lihat juga: .LD lokal ... tetap memiliki .local
praktik yang buruk)
ssh user@hostname:/folder
?