6 votos

Establecer el nombre de host para SSHelper

Actualmente uso SSHelper para transferir mis datos al dispositivo Android 4.0. La aplicación muestra la dirección IP que está asignada actualmente. Dado que esta dirección IP cambia regularmente, me gustaría utilizar un nombre de host para el dispositivo, con todos mis equipos Linux, que funciona con Avahi/Zeroconf y tengo computername.local.

¿Cómo puedo obtener ese nombre de host para mi dispositivo Android?

3voto

Rolf Rander Puntos 1764

En la actualización de marzo de 2014 de SSHelper, la documentación indica nuevos cambios en su nombre de difusión de Zeroconf. En la documentación Configuración sección del detalles describe la casilla de verificación para "Activar la difusión de Zeroconf". Cuando esto está habilitado cualquier otro cliente en la red local, será capaz de navegar y luego conectarse para SSHelper en la red.

A partir de SSHelper ver 5.0 El nombre de la instancia registrada es el nombre del modelo de su Android. Por ejemplo, "Nexus 4".

Actualización: la versión 5.5 permite una forma de establecer el nombre de host. Dejo esta respuesta de la versión 5.0 ya que las siguientes instrucciones pueden seguir siendo útiles.

No necesitas mirar la aplicación SSHelper para saber a qué ip/nombre de host conectarte desde tu otra máquina.

Desde linux (puede ser necesario instalar avahi-utils):

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

Más concretamente, introduciendo este comando se conectará por SSH al servidor de Android, por ejemplo "Nexus 4", sin necesidad de conocer su nombre:

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

Para OS X (10.9 Mavericks), no hay que instalar nada pero hay que ejecutar dns-sd y luego Ctrl + C para matar el proceso después de ver el nombre de host de 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

0 votos

Sí, es realmente una pena que -según su descripción- no sea posible establecer un nombre de host frito por humanos, sólo para hacer ssh MY-ANDROID.local !..

0 votos

Sí, ahora es posible establecer un nombre personalizado. Tenga en cuenta las actualizaciones de esta respuesta.

3voto

Rolf Rander Puntos 1764

Dejo mi respuesta antigua ya que los ejemplos de navegación y análisis pueden seguir siendo útiles para algunas personas.

Gracias a que el desarrollador versión 5.5 actualización de SSHelper, puede crear un nombre definido por el usuario para que sea el nombre de la instancia de Zeroconf de los teléfonos. SSHelper ejecutará el servidor SSH en un Android no rooteado.

  1. Actualizar SSHelper a la versión 5.5
  2. Abre los ajustes de Bluetooth de Android y activa el Bluetooth.
  3. Ahora en la esquina inferior derecha hay ajustes para "Renombrar el teléfono". Personaliza el nombre.
  4. Desactiva el Bluetooth si quieres.
  5. Reinicie SSHelper.

Registrará el nombre de Bluetooth como el nombre de ZeroConf. Ahora, siempre que la máquina desde la que te conectas tenga el software cliente avahi/bonjour, puedes hacer ping, ssh, sftp o rsync a PhoneName.local. Si no cambias el nombre de tu Bluetooth, se registrará por defecto con el nombre del modelo del dispositivo. por ejemplo, "Nexus_4"

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

2voto

Rollo Tomazzi Puntos 1452

Todavía no he encontrado la manera de crear un nombre de host para un dispositivo Android. Lo que he hecho es que establecer una reserva de IP para mi teléfono, de modo que cada vez que voy a utilizar SSH (Yo uso QuickSSHd, pero debería funcionar para SSHelper) puede al menos apuntar a la misma dirección IP.

No hay manera de establecer un nombre de host para el teléfono, que he encontrado.

1 votos

Vale, he mentido, hay una forma fácil de cambiar el nombre de host, pero no es lo que se espera para intentar SSH. Puedes usar getprop hostname.net y setprop hostname.net NEW_NAME para cambiar el nombre de host de tu teléfono y cómo aparece en tu router, pero esto no te permite hacer SSH por nombre de host.

0 votos

En realidad es net.hostname, pero sin tu comentario no lo habría encontrado.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X