Hola
al intentar abrir un portátil, aparece un error de socket 99 "No se puede asignar la dirección solicitada". Esto sucedió después de una actualización del sistema, aunque Ipython se actualizó solo de 2.1.0-62 a 2.1.0-63 (paquete SuSE) Verifiqué lo siguiente sin ningún éxito:
Así que no sé qué más puedo hacer. Se agradece cualquier sugerencia sobre qué más puedo hacer.
El mensaje de inicio es
tmp /> cuaderno ipython --init --log-level = 50 --ip = 'localhost' --port = 49151 [15:46:39]
Rastreo (llamadas recientes más última):
Archivo "/ usr / bin / ipython", línea 5, en
start_ipython ()
Archivo "/usr/lib/python2.7/site-packages/IPython/ init .py", línea 120, en start_ipython
devolver launch_new_instance (argv = argv, _kwargs)Archivo "/usr/lib/python2.7/site-packages/IPython/config/application.py", línea 563, en launch_instanceapp.initialize (argv)Expediente "
error: [Errno 99] No se puede asignar la dirección solicitada
La configuración de mi sistema es
{'commit_hash': '681fd77',
'commit_source': 'instalación',
'default_encoding': 'UTF-8',
'ipython_path': '/usr/lib/python2.7/site-packages/IPython',
'ipython_version': '2.1.0',
'os_name': 'posix',
'plataforma': 'Linux-3.11.10-17-default-x86_64-with-SuSE-13.1-x86_64',
'sys_executable': '/ usr / bin / python',
'sys_platform': 'linux2',
'sys_version': '2.7.6 (predeterminado, 21 de noviembre de 2013, 15:55:38) [GCC]'}
Mi versión de tornado es
Nombre: python-tornado / Versión: 3.2.1-2.1 / Arco: x86_64
¿Y si prueba --ip=127.0.0.1
?
Hola
Eso funciona (debería haber pensado en eso). Lo puse en mi ipython_notebook_config.py. Me pregunto por qué cambió el comportamiento ...
Entonces por mi parte podría cerrar este tema. Solo si uno pudiera cambiar el mensaje de error a algo significativo que apunte a la solución, mantendría este problema abierto. Pero tal vez este problema sea demasiado específico ...
¡Muchas gracias por la rápida respuesta!
Copiando explicación de # 6191:
IPython escucha en localhost de forma predeterminada. 127.0.0.1 debería comportarse igual, y lo hace en casi todos los casos. Algunos casos en los que esto se puede manejar de manera diferente incluyen proxies locales y / o firewalls (generalmente debido a un descuido de la configuración, en lugar de una diferencia intencional en el comportamiento). Hemos encontrado casos en los que localhost funciona y 127 no y viceversa, por lo que no hay una respuesta inequívocamente correcta para el valor predeterminado.
¿Tiene una configuración de servidor de seguridad y / o proxy? Si es así, ¿controlas su configuración? Describiría este comportamiento como un error en la configuración de su red, pero es posible que no tenga permiso para corregirlo.
Gracias, especificar 127.0.0.1 también resolvió el error de socket para mí
Si lo usa en un servidor en la nube, puede usar --ip=0.0.0.0
.
Gracias por mantener este problema, estoy configurando un servidor portátil en un servidor en la nube. Y especificar la ip de escucha como "0.0.0.0" resolvió este mismo problema.
Gracias, tuve el mismo problema :)
gracias lo resolvió!
Para las personas que provienen de los resultados de búsqueda: revise su /etc/hosts
para ver si hay errores tipográficos y la configuración de ipv6. localhost
solo debe apuntar a ipv4 loopback ( 127.0.0.1
), no a ipv6 ( ::1
). Esto puede romper otras cosas, no solo jupyter.
Por ejemplo, esto está mal:
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
esto esta bien:
::1 localhost6 localhost6.localdomain6
https://github.com/codenvy/codenvy/issues/2427#issuecomment -397347888
https://bugzilla.redhat.com/show_bug.cgi?id=211800#c4
@mlazowik ¡ Muchas gracias! Esto resolvió mi problema: me pregunto cuántos otros tienen el mismo problema pero han optado por la solución 127.0.0.1. Esta es la solución correcta (asegurándose de que la tabla de búsqueda de nombres de host sea correcta). En mi caso (Arch Linux), mi /etc/hosts
se "envió" de la siguiente manera:
127.0.0.1 localhost.localdomain localhost
::1 localhost.localdomain localhost
Y lo corrigí a lo siguiente:
127.0.0.1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
Si lo usa en un servidor en la nube, puede usar
--ip=0.0.0.0
.
Para mí (en mac) solo el --ip = 0.0.0.0 funciona en la ventana acoplable en ejecución local.
En mi caso, se debe a que / etc / hosts tiene una dirección de loopback :: 1 duplicada en IPv6.
Después de comentar la segunda dirección de loopback :: 1, el error desaparece.
@mlazowik Tuve el mismo problema con la misma solución eventual, pero me pareció interesante que man /etc/hosts
tenga esto en su ejemplo, lo que me impidió resolver mi problema (ya que una presunta autoridad recomienda exactamente lo que estás diciendo es problemático):
# The following lines are desirable for IPv4 capable hosts
127.0.0.1 localhost
127.0.1.1 thishost.mydomain.org thishost
[...]
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
Dejé caer el localhost
de la entrada ::1
(manteniendo los otros dos) y todo está bien. También asumí que ip6
era una palabra clave ipv6
, pero quizás ip6-foo
y foo6
están bien (por ejemplo, solo alguna forma de alteración de nombres frente a ipv4
equivalente)?
Comentario más útil
¿Y si prueba
--ip=127.0.0.1
?