6 votes

Définir le nom d'hôte pour SSHelper

J'utilise actuellement SSHelper pour transférer mes données vers l'appareil Android 4.0. L'application affiche l'adresse IP qui est actuellement attribuée. Comme cette adresse IP change régulièrement, j'aimerais utiliser un nom d'hôte pour l'appareil, avec tous mes ordinateurs Linux, qui fonctionne avec Avahi/Zeroconf et j'ai computername.local.

Comment puis-je obtenir un tel nom d'hôte pour mon appareil Android ?

3voto

Rolf Rander Points 1764

Dans la mise à jour de mars 2014 de SSHelper, la documentation fait état de nouvelles modifications de son nom de diffusion Zeroconf. Dans la documentation Configuration de la section détails il décrit la case à cocher pour "Activer la diffusion Zeroconf". Lorsque cette option est activée, n'importe quel autre client du réseau local sera en mesure de naviguer et de se connecter à SSHelper sur le réseau.

A partir de SSHelper ver 5.0 le nom de l'instance enregistrée est le nom du modèle de votre Android. Par exemple, "Nexus 4".

Mise à jour : la version 5.5 permet de définir le nom d'hôte. Je laisse la réponse à cette version 5.0 car les instructions ci-dessous peuvent encore être utiles.

Vous n'avez pas besoin de regarder l'application SSHelper pour savoir à quel ip/hostname vous connecter depuis votre autre machine.

Depuis linux (vous devrez peut-être installer avahi-utils) :

avahi-browse --terminate --resolve --parsable _ssh._tcp

Plus précisément, en entrant cette commande, vous vous connecterez en SSH au serveur Android, par exemple "Nexus 4", sans avoir besoin de connaître son nom :

ssh `avahi-browse --terminate --resolve --parsable _ssh._tcp \
| grep "Nexus.*;local;" \
| sed -E 's/.*Nexus.*;local;(.*.local);.*/\1/g'`

Pour OS X (10.9 Mavericks), il n'y a rien à installer mais vous devez exécuter dns-sd et ensuite Ctrl + C pour tuer le processus après avoir vu le nom d'hôte Android bonjour.

# If your model name is not "Nexus 4", Be sure to use your phones model name.
dns-sd -L "Nexus 4" _ssh._tcp local

# this will output something like this:
# Nexus\0324._ssh._tcp.local. can be reached at 192-168-1-6.local.:22

# so now ping by the name found from above:
ping 192-168-1-6.local

3voto

Rolf Rander Points 1764

Je quitte mon ancienne réponse puisque les exemples de navigation et d'analyse peuvent encore être utiles pour certaines personnes.

Grâce à l'aide du développeur version 5.5 à SSHelper, vous pouvez créer un nom défini par l'utilisateur qui sera le nom de l'instance Zeroconf des téléphones. SSHelper exécutera le serveur SSH sur un Android non enraciné.

  1. Mise à jour de SSHelper à la version 5.5
  2. Ouvrez les paramètres Bluetooth d'Android et activez Bluetooth.
  3. Maintenant, dans le coin inférieur droit, il y a des paramètres pour "Renommer le téléphone". Personnalisez le nom.
  4. Désactivez le Bluetooth si vous le souhaitez.
  5. Redémarrez SSHelper.

Il enregistrera le nom Bluetooth comme le nom ZeroConf. Maintenant, tant que la machine à partir de laquelle vous vous connectez possède le logiciel client avahi/bonjour, vous pouvez faire un ping, un ssh, un sftp ou un rsync vers PhoneName.local. Si vous ne changez pas votre nom Bluetooth, il s'enregistrera par défaut avec le nom du modèle de l'appareil. Par exemple, "Nexus_4".

# For example:
ping Nexus_4.local
SSH Nexus_4.local

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X