Esegui il ping di Ubuntu in base al nome host in un computer Windows


6

Ho installato Ubuntu 12.04 su una macchina virtuale (Virtualbox). L'adattatore di rete è collegato mediante un adattatore a ponte.

Posso eseguire il ping del sistema operativo guest tramite IP ma non posso eseguire il ping tramite il nome host.

Ho già installato Samba e WinBind. Ho anche modificato /etc/nsswitch.conf in e 'wins'.

Le impostazioni impiegano tempo per entrare in vigore? Quali altre cose posso provare per poter eseguire il ping del sistema operativo Ubuntu per nome host?

Grazie!


Hai configurato Samba con il nome macchina desiderato e sei sicuro che nmbdsia in esecuzione?
Ignacio Vazquez-Abrams,

se si utilizza un collegamento in rete e si dispone di una sola rete interna, non è necessario vincite. UDP 137 e 139 sulla confezione di Ubuntu sono accessibili all'host? il servizio netbios-ns dovrebbe funzionare su queste porte per la risoluzione dei nomi delle trasmissioni.
Frank Thomas,

@ IgnacioVazquez-Abrams No. Qualche guida su come configurare Samba e cosa inserire? Come posso verificare se nmbd è in esecuzione?
Ian

@FrankThomas Ho spento il firewall. Presumo che 137 e 139 siano aperti. Inoltre, non sono sicuro del perché la rete a ponte e la "rete interna" siano importanti qui?
Ian

1
utilizzando una connessione di rete a ponte, il tuo ospite appare sulla stessa rete del tuo host e delle altre tue apparecchiature. NetBIOS era originariamente un protocollo LAN che non poteva attraversare i router, quindi se la tua rete era divisa in sottoreti o formata da più reti, era necessario un server WINS per abilitare le funzionalità nell'intera azienda. al giorno d'oggi, con NetBIOS su TCP / IP, non è più necessario utilizzare un server wins per fare broker in questo modo, e dato che hai comunque una sola sottorete, WINS è doppiamente insignificante.
Frank Thomas,

Risposte:


4

Non sono sicuro del perché Ubuntu sia diverso, ma funziona con Debian:

Installa debian usando una rete bridge

Installa Samba

Non appena Samba è installato e in esecuzione, è possibile eseguire il ping del computer guest tramite il nome host. Sto usando un host Windows 7 e un guest Debian 7 LXDE.


Ho appena provato lo stesso con Ubuntu Server 12.04.2 e funziona allo stesso modo. Sono in grado di eseguire il ping dell'ospite per nome host. Non è necessaria la modifica di alcun file di configurazione. Quindi in teoria dovrebbe essere piuttosto semplice. Forse una sorta di problema firewall / AV sul tuo host.
BJ292,

2

È necessaria la risoluzione dei nomi. O statico (lmhost, host) o dinamico (vittorie, DNS). Guarda questa breve e antica scrittura che ho fatto anni fa I file lmhosts e hosts per una rapida panoramica.

Non hai menzionato quale versione di Windows stai utilizzando, ma tieni presente che un "gruppo home" non è un gruppo di lavoro (o un dominio). E un "gruppo home" è valido solo tra i sistemi Windows 7 (e presumo 8), quindi è abbastanza limitante e dovrebbe essere evitato.

Winbind consente a Samba di eseguire l'autenticazione tramite un PDC o AD esterno e non deve essere confuso con WINS. Per utilizzare WINS è necessario un server WINS (!). Affinché Samba funga da server WINS, la sezione globale smb.conf necessita di una wins support = yesvoce, inoltre non utilizzare una wins server =voce (questa voce serve per indirizzare Samba a utilizzare un altro server WINS e non essere uno stesso).

Altri sistemi devono registrarsi con il database WINS per essere efficaci, facilmente realizzabili tramite DHCP ma possono anche essere configurati manualmente.

È possibile verificare facilmente se i propri sistemi si stanno registrando nel database WINS esaminando il file wins.dat . La posizione può essere dipendente dalla distro ma il mio è a /var/lib/samba/wins.dat.


1

Se hai qualche dispositivo Apple e, come tale, hai installato iTunes sul tuo PC Windows, hai questa piccola cosa chiamata risponditore mDNS installata su Windows. Ubuntu ne ha anche uno (Avahi) che è gratuito, open source, lennartful e, soprattutto: installato di default. Windows dovrebbe quindi essere in grado di risolvere il nome host di Ubuntu purché lo termini .local, ad esempio ubuntu.localse il nome host è ubuntu. La risoluzione dei nomi avviene tramite DNS multicast, che utilizza UDP sulla porta 5353 e sul gruppo 224.0.0.251.

Ubuntu dovrebbe anche essere in grado di vedere le tue finestre in quel modo (prova avahi-browse -ao avahi-discover)


Solo una nota per chiunque abbia battuto la testa contro questo: Avahi non funzionerà tra le sottoreti, ed è comune nelle reti aziendali avere wireless / Ethernet su sottoreti separate.
detenere il

0

Stavo lavorando a una soluzione con Avahi, ma Avahi scopre solo il servizio in rete. Forse consentire anche ai dispositivi Apple e Linux di scoprire host Linux. Ma Windows è una soluzione diversa. Windows utilizza NetBios su TCP / IP, si spera, quindi, per l'host Linux esporre il nome host all'host Windows, dobbiamo avviare nmbd e smbd, intendo samba. Nell'ultima distribuzione Arch è semplice:

sudo pacman -S samba

poi

cp /etc/samba/smb.conf.default smb.conf

o qualcosa del genere allora

sudo systemctl enable smbd
sudo systemctl start smbd
sudo systemctl enable nmbd
sudo systemctl start nmbd

Assicurati di impostare il nome host desiderato:

hostnamectl set-hostname myhostname

E il gioco è fatto. In Windows basta dire

ping myhostname

e voilà!

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.