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
sumber
ssh user@hostname:/folder
?ping pc.local
?strace ssh user@foo
juga akan menunjukkan bahwa kontak ssh avahi-daemon dengan permintaan untuk menyelesaikanfoo
, 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)Jawaban:
Yah,
*.local
tidak terselesaikan.Begitu seterusnya mesin Klien (Notebook)
Install
avahi-dnsconfd
avahi-dnsconfd
mendengarkan penerbitan dan meneruskannya keresolvconf
.Instal
libnss-mdns
(Pustaka ini tidak ada, Menginstalnya memperbaiki masalah dalam kasus ini)Memeriksa
/etc/nsswitch.conf
Seharusnya
mdns4_minimal
ataumdns4
sebelum[NOTFOUND=return]
dan sebelumdns
jika Anda memiliki server DNS yang mengkonfigurasi tekad*.local
.Hapus
wins
jika Anda tidak menggunakan winbind / samba untuk menyelesaikan nama host berbagi Windows.Mulai ulang
Petunjuk debug:
Mesin klien (Notebook)
Periksa
avahi-dnsconfd
status layananJalankan
avahi-discover
, Desktop Anda harus terdaftar di IPv4 → local → WorkstationContoh dalam tangkapan layar
mx5
adalah PC saya di manasalah-Aspire-5738
mesin lain.Lihat apakah Avahi dapat menyelesaikan nama host
Tes ping
Mesin server (Desktop) , Jika
avahi-discover
mesin Klien tidak mencantumkan entri Server.Konfirmasikan bahwa itu
avahi-daemon
sudah diinstalavahi-daemon
menyediakan layanan penerbitan.Periksa status layanannya
Secara default
avahi
menerbitkan_workstation._tcp
layanan. periksa menggunakanavahi-discover
lokal, jika tidak terdaftar coba mengaktifkannya di/etc/avahi/avahi-daemon.conf
(hapus#
)Kemudian restart daemon:
Periksa lagi.
sumber
avahi-discover
danavahi-dnsconfd
tidak diinstal di netbook atau PC saya, jadi saya menginstal keduanya. Saya juga diedit/etc/nsswitch
agar terlihat seperti sampel yang Anda berikan (sebelumnya hanya entri adalah file dan dns) tetapi keduanyaping
danavahi
masih memberikan kesalahan yang sama. Ada saran lagi?wins
tidak membantu.avahi-dnsconf
adalah berjalan di netbook (meskipun saya harus menggunakansudo service avahi-dnsconfd
daftar itu, jika tidakservice
akan menanggapi dengan pekerjaan yang tidak diketahui).avahi-discover
(ketika dijalankan di netbook saya) tidak daftar desktop (dan dengan benar), baik di bawah judul Workstation dan ssh heading. Namun saya masih tidak bisa melakukan ping atau ssh ke pc menggunakan nama host .local. Saya tetap memeriksa daemon di desktop, danavahi-daemon
sedang berjalan. Ada ide? (btw, terima kasih atas semua saran Anda, saya hargai itu)avahi-resolve -4 --name yourdesktop.local
,?