¿Como usar el mismo host name aunque cambien la IP local?

11 envíos / 0 nuevos
Último envío
#1 Sáb, 09/11/2019 - 17:46
Luces
Imagen de Luces
Desconectado/a
se unió: 07/11/19

¿Como usar el mismo host name aunque cambien la IP local?

Estado: 
[ACTIVO]

Saludos.

Encontré una excelente opción para sincronizar calendarios en una red local con Radicale (linux), Thunderbird (linux), DAVx5 (android) que es compatible en android con casi todos los calendarios.

 

Pero me falta lo siguiente:

Necesito que mi laptop use el mismo host name sin importar el cambio de IP en una red LAN (red local) no internet.

La sincronización es con una laptop y mi teléfono, y necesito que la sincronización sea solo con la red local, no con internet, esta laptop lo llevo conmigo a varios lugares por eso la IP de la laptop cambia (la laptop es como un servidor) ejemplo: aveces es 10.1.3.34 a veces 192.168.1.5 , etc.

 

Estos software funcionan con IP o con Host name, Radical entrega una URL como por ejemplo:

 

http:// localhost:5232/ fake/234e38a1-32eg-9e0x-e3tn-eut92930etae/

O

http:// 10.1.3.23:5232/ fake/234e38a1-32eg-9e0x-e3tn-eut92930etae/

 

Alguien sabe como puedo usar un host name sin importar el cambio de IP local.

 

Gracias

Sáb, 09/11/2019 - 19:20
caliban
Imagen de caliban
Desconectado/a
moderador
se unió: 14/01/16

No llego a entender del todo tu problema  el hostname no cambia con el cambio de ip .

comproba tu hostname  

hostname

o también 

hostnamectl

Cambiando la ip no te cambia .a menos que estés hablando de otra cosa .

 

Dom, 10/11/2019 - 00:34 (Responder a #2)
Luces
Imagen de Luces
Desconectado/a
se unió: 07/11/19

Gracias por contesta caliban.

Necesito una forma de ingresar a la laptop aunque se cambien el IP de la red local

 

- Con Radical se crea un pequeño servidor CalDav (para sincronizar calendarios)

- Solo lo necesito entre mi laptop y mi teléfono para que cuando se conecten a una red local se sincronice.

- En mi laptop debian con Radical instalado puedo ingresar GUI de Radical con lo siguiente:

 

- Pero desde mi teléfono solo puedo ingresar desde la IP de la laptop:

 

- El problema es que me conecto a otras redes y la IP local de la laptop cambia y el software del telefono pide

La pregunta más bien es: de que forma me puedo conectar a Radical que esta en la laptop desde mi teléfono si la IP local de la laptop esta cambiando?

 

 

 

Dom, 10/11/2019 - 11:19
caliban
Imagen de caliban
Desconectado/a
moderador
se unió: 14/01/16

No tengo un teléfono asi que no se como va el sistema operativo , pero en una LAN podes acceder mediante el hostname  si modificas el archivo  /etc/hosts    y le agregas  un nombre de dominio valido asociado a la ip( FQDN) a la cual queres ingresar . si tuvieras mas de una ip posible( como es tu caso ) asocias un nombre de dominio valido a dichas ip y  para acceder  desde el cliente al servidor simplemente indicas el nombre de dominio ( un nombre valido pero inventado  el que quieras ) 

Para hacer pruebas  podes usar un ping , en vez de la ip  pones dicho nombre de dominio 

Dicho  esto  desconozco si la aplicación Radical pueda funcionar de este modo ,pero te doy una pauta posible a investigar.

Te pongo el ejemplo :

Modifico el archivo  /etc/hosts  y le agrego   un FQDN  apuntando a una ip de mi lan 

192.168.1.153  debian.dominiolocal.com 

Si hago un ping a la ip , y luego a nuevo nombre de dominio da :

ping 192.168.1.153
PING 192.168.1.153 (192.168.1.153) 56(84) bytes of data.
64 bytes from 192.168.1.153: icmp_seq=1 ttl=64 time=0.254 ms
64 bytes from 192.168.1.153: icmp_seq=2 ttl=64 time=0.168 m
...........................................................................
...................................................
 ping debian.dominiolocal.com
PING debian.dominiolocal.com (192.168.1.153) 56(84) bytes of data.
64 bytes from debian.dominiolocal.com (192.168.1.153): icmp_seq=1 ttl=64 time=0.168 ms
64 bytes from debian.dominiolocal.com (192.168.1.153): icmp_seq=2 ttl=64 time=0.169 ms
64 bytes from debian.dominiolocal.com (192.168.1.153): icmp_seq
...................................................................

 

Lun, 11/11/2019 - 22:50 (Responder a #4)
Luces
Imagen de Luces
Desconectado/a
se unió: 07/11/19

Gracias caliban

 

Modifique /etc/hosts con el IP local actual, hace ping con IP y el host y la sincronización funciona perfecto.

El problema es que el IP siempre va cambiar ya que me conecto a varias redes, no sera igual siempre, entonces no funcionara.

No se si existe otra forma, por ejemplo, Syncthing me funciona excelente para sincronizar y hacer copias de los archivos en todos los dispositivos (incluso android), este software open source trabaja sin tener que asignar IPs ni nada, pero no conozco bien como lo hace.

No tenia idea que sincronizar un simple Calendario iba a ser tan complicado.

 

Muchas gracias caliban.

 

 

 

Mar, 12/11/2019 - 12:00
caliban
Imagen de caliban
Desconectado/a
moderador
se unió: 14/01/16

He vuelto a leer todo  el tema y hay algo que no logro entender del todo.

Si para conectarte mediante el teléfono vos necesitas ingresar en la barra de búsquedas la ip de la la laptop ,cuando cambias de red y cambia dicha ip ¿cual es el inconveniente de ingresar la nueva ip ? 

En el ejemplo vos mostras una ip de una red LAN , supongo que el teléfono se conectara al router por eso encuentra el camino hacia el servidor ,  o es de otro modo ? (reitero no tengo un teléfono no se como va el acceso de dicho teléfono hacia la pc  , si es directo o si  simplemente el teléfono se asocia ( se conecta ) a la red y pasa a ser un host mas dentro de la lan.

En un sistema de red siempre se necesita una forma de identificar los hosts (dispositivos ) sea una ip , sea por MAC.

en cuanto a la aplicación Syncthing ,que mecionas no usa la ip bla bla ,  te pongo un par de enlaces para que tengas referencias en cuanto a como identifican entre si dispositivos.

https://docs.syncthing.net/dev/device-ids.html#device-ids

https://docs.syncthing.net/users/faq.html

Mar, 12/11/2019 - 14:40 (Responder a #6)
Luces
Imagen de Luces
Desconectado/a
se unió: 07/11/19

 

Lo siento si no conozco realmente sobre el tema de los servidores, solo quiero sincronizar mis cosas con herramientas open source.

 

- Tanto la laptop como el teléfono se conectan a un router, siempre es diferente cada vez y la IP local de la laptop siempre cambia.

- Cuando Radical esta configurado (en la laptop que es mi caso) puedo ingresar desde la laptop a http:// localhost:5232/.web/ ( o http:// IP local:5232/.web/)

- Aquí voy a ingresar con mi usuario y contraseña (antes configurado con Radicale), crear un nuevo calendario y Radical me entrega una URL, ejemplo: http:// localhost:5232/Cristian/cc1dd988-3213-2b57-2439-5d01c2d35c4f/ (o http:// IP local:5232/Cristian/cc1dd988-3213-2b57-2439-5d01c2d35c4f/)

 

Radicale WEB

 

 

 

 

 

 

 

 

 

 

 

 

 

Con Thunderbird, ingreso a las opciones y coloco la URL que Radical me dio y cada cita que agregue en Thunderbird se sincroniza automáticamente con Radical. ( en el caso de Thunderbird debo colocar el usuario seguido de un @ y el URL ejemplo: http:// cristian@localhost:5232/Cristian/cc1dd988-3213-2b57-2439-5d01c2d35c4f/ )

 

 

 

Thunderbird

 

 

- Ahora solo falta sincronizar con el teléfono también, para esto uso el app DAVx5, ingreso los datos y se conecta con Radicale (que esta en la laptop actuando de servidor), este se encarga de sincronizar automáticamente cualquier calendario que tengo instalado en el teléfono.

- El detalle aquí es que la IP local de la laptop cambiara siempre por estar en distintos Routers.

 

Nota: en la imagen de ejemplo coloque localhost... como ejemplo, pero lógicamente no se conecta a la laptop.

DAVz5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Lo siguiente es la parte de server en el archivo config en Radicale:

 

[server]
max_connections = 20
# 1 Megabyte
max_content_length = 10000000
# 10 seconds
timeout = 10
# CalDAV server hostnames separated by a comma
# IPv4 syntax: address:port
# IPv6 syntax: [address]:port
# For example: 0.0.0.0:9999, [::]:9999
# hosts = 127.0.0.1:5232      ( descomento esto para hacer pruebas)        
# Daemon flag
#daemon = False
# File storing the PID in daemon mode
#pid =
# Max parallel connections
#max_connections = 20
# Max size of request body (bytes)
#max_content_length = 100000000
# Socket timeout (seconds)
#timeout = 30
# SSL flag, enable HTTPS protocol
#ssl = True
# SSL certificate path
certificate = /etc/ssl/certs/ssl-cert-snakeoil.pem
#certificate = /etc/ssl/radicale.cert.pem
# SSL private key
key = /etc/ssl/private/ssl-cert-snakeoil.key
#key = /etc/ssl/radicale.key.pem
# CA certificate for validating clients. This can be used to secure
# TCP traffic between Radicale and a reverse proxy
#certificate_authority =
# SSL Protocol used. See python's ssl module for available values
#protocol = PROTOCOL_TLSv1_2
# Available ciphers. See python's ssl module for available ciphers
#ciphers =
# Reverse DNS to resolve client address in logs
#dns_lookup = True
# Message displayed in the client when a password is needed
#realm = Radicale - Password Required

 

Mencionas que podria conectarme con la MAC de la laptop?

 

 

Gracias

 

 

 

 

Mar, 12/11/2019 - 15:13
caliban
Imagen de caliban
Desconectado/a
moderador
se unió: 14/01/16

Vamos a lo simple , mi punto es este :

Primer caso te conectas con la laptop a un ruter dado  supongo tu configuración de red esta en forma dinámica o sea DHCP  el router le asigna una ip ,  bien   el teléfono se conecta al mismo router  y  para acceder a tu servidor le indicas 

la ip que tiene ahora tu laptop, o sea  conoces dicha ip .

Caso dos ,accedes a una segunda red con la lap,  nuevamente el sistema solicita y obtiene una ip dinámica  IP2 , con el teléfono también accedes a esta nueva red , y para conectarte al servidor  le indicas esta segunda IP2 que también conocerás .

En definitiva a cada red que accedas con la laptop ,conocerás su ip  y  podrás indicar en el teléfono dicha ip para acceder al servidor .

¿Me he perdido de algo en el camino ??

Mar, 12/11/2019 - 16:32 (Responder a #8)
Luces
Imagen de Luces
Desconectado/a
se unió: 07/11/19

 

Es correcto, cada vez la IP de la laptop cambia, sea 192.168.1.12 o 10.3.1.23 o lo que sea.

Pero la sincronización no seria automática entre Radicale y  DAVx5 del teléfono si cada vez debo meter mano  y cambiar la configuración, cambiar el URL en DAVx5.

 

- Esto por que el URL que me funciona en una red con IP 192.168.1.12 es:

http:// 192.168.1.12:5232/Cristian/cc1dd988-3213-2b57-2439-5d01c2d35c4f/

 

- Y no funciona con localhost ni con otro nombre a menos que cambie en /etc/hosts y le asigne la IP del momento a un nombre.

http:// localhost:5232/Cristian/cc1dd988-3213-2b57-2439-5d01c2d35c4f/

 

Lo que quiero decir es que necesito que todo funcione automático, sin tener que estar cambiando la configuración cada vez que me conecto a un router distinto y este le asigna a la laptop una IP diferente.

Como no conozco nada sobre esto, no se si existe alguna forma que sin importar la IP los calendarios se van a sincronizar sin tener que meter mano con cada cambio de IP (tal y como sincroniza los archivos Syncthing, que no importa en que router me conecto, aunque cambie la IP en la laptop, este sigue funcionando sin tener que tocar la configuración, apenas y me doy cuenta que existe, solo trabaja y ya)

Mar, 12/11/2019 - 16:54
caliban
Imagen de caliban
Desconectado/a
moderador
se unió: 14/01/16

Bien, ahora no se me ocurre tengo que pensarlo.

Pero pensa en esto para que entiendas que ocurre.

En el cliente  en el teléfono ( el programa que solicita al servidor )tenes que indicar una dirección donde se encuentra el servidor, o sea la ip de la laptop,  si esa ip cambia y no se sabe cual  sera la siguiente ¿de que modo podes indicarle al cliente donde se encuentra el servidor ? ( o sea en que dirección de red hacer las peticiones) 

Por esta razón los host que tienen servidores se les asigna ip estáticas , y si las tuviera dinámicas como es el caso de los servidores caseros cuya  ip publica puede cambiar, hay que asociar un servicio como no-ip que se encarga de recibir las peticiones  hacia la URL de un servidor y redireccionarla a la ip actual del servidor .

La opción de usar  hosts  es que de ese modo y en dicho archivo se puede asociar una dirección a un nombre, si las posibles ip fueran todas conocidas  simplemente asociando dicho nombre a dichas ip estaría resuelto el asunto ,pero no es el caso .

Como he dicho en este momento no se me ocurre un modo simple , tampoco conozco  DAVX5  

Mar, 12/11/2019 - 17:08 (Responder a #10)
Luces
Imagen de Luces
Desconectado/a
se unió: 07/11/19

Exacto, es justo lo que acabas de mencionar.

Tal vez un script que tome la dirección IP local actual y asigne esa IP a un nombre de host al archivo /etc/hosts

O no se si con la dirección MAC de la laptop se podrá

Investagare, muchas gracias de todas formas, si encuentro respuesta avisare.