[{"data":1,"prerenderedAt":1016},["ShallowReactive",2],{"content-index":3,"doc-es-macos":80},{"en":4,"de":54,"es":67},{"paths":5,"docs":29},[6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28],"\u002Fdocs\u002Fgetting-started","\u002Fdocs\u002Flinux","\u002Fdocs\u002Fmacos","\u002Fdocs\u002Fwindows","\u002Fdocs\u002Fdocker","\u002Fdocs\u002Fcreate-api-key","\u002Fguides\u002Ffind-your-public-ip-address\u002Ffind-your-ip-address-on-linux","\u002Fguides\u002Ffind-your-public-ip-address\u002Ffind-your-ip-address-on-mac","\u002Fguides\u002Ffind-your-public-ip-address\u002Ffind-your-ip-address-on-windows","\u002Fguides\u002Ffind-your-public-ip-address","\u002Fguides\u002Fself-hosting\u002Fdocker-desktop-mac-client-ip","\u002Fguides\u002Fself-hosting\u002Fexpose-docker-containers-to-the-internet","\u002Fguides\u002Fself-hosting\u002Fexpose-home-server-to-internet","\u002Fguides\u002Fself-hosting\u002Fgetpublicip-vs-cloudflare-tunnel-vs-tailscale","\u002Fguides\u002Fself-hosting\u002Fmac-mini-home-server","\u002Fguides\u002Fself-hosting\u002Fport-forwarding-not-working","\u002Fguides\u002Fself-hosting\u002Fself-hosting-behind-carrier-grade-nat-cgnat","\u002Fguides\u002Fself-hosting\u002Fwireguard-simple-watchdog-script","\u002Fguides\u002Fstatic-public-ip-address\u002Fhow-to-get-a-public-ip-address","\u002Fguides\u002Fstatic-public-ip-address\u002Fhow-to-get-a-static-ip-address","\u002Fguides\u002Fstatic-public-ip-address","\u002Fguides\u002Fuse-cases\u002Fhome-server","\u002Fguides\u002Fuse-cases\u002Foffice-server",[30,34,38,42,46,50],{"path":6,"title":31,"icon":32,"stem":33},"Getting Started","mdi-file-document-outline","docs\u002F1.getting-started",{"path":7,"title":35,"icon":36,"stem":37},"Linux","mdi-linux","docs\u002F2.linux",{"path":8,"title":39,"icon":40,"stem":41},"macOS","mdi-apple","docs\u002F3.macos",{"path":9,"title":43,"icon":44,"stem":45},"Windows","mdi-microsoft-windows","docs\u002F3.windows",{"path":10,"title":47,"icon":48,"stem":49},"Docker","mdi-docker","docs\u002F4.docker",{"path":11,"title":51,"icon":52,"stem":53},"Create API Key","mdi-key","docs\u002F5.create-api-key",{"paths":55,"docs":58},[6,7,8,9,10,11,12,14,15,56,17,18,57,19,21,22,24,25,26,27,28],"\u002Fguides\u002Fself-hosting\u002Fdyndns-hinter-cgnat","\u002Fguides\u002Fself-hosting\u002Ffritzbox-portfreigabe-ds-lite",[59,61,62,63,64,65],{"path":6,"title":60,"icon":32,"stem":33},"Erste Schritte",{"path":7,"title":35,"icon":36,"stem":37},{"path":8,"title":39,"icon":40,"stem":41},{"path":9,"title":43,"icon":44,"stem":45},{"path":10,"title":47,"icon":48,"stem":49},{"path":11,"title":66,"icon":52,"stem":53},"API-Schlüssel erstellen",{"paths":68,"docs":71},[6,7,8,9,10,11,12,14,15,69,70,17,18,19,21,22,24,25,26,27,28],"\u002Fguides\u002Fself-hosting\u002Fcomo-saber-si-tengo-cgnat","\u002Fguides\u002Fself-hosting\u002Fddns-detras-de-cgnat",[72,74,75,76,77,78],{"path":6,"title":73,"icon":32,"stem":33},"Primeros pasos",{"path":7,"title":35,"icon":36,"stem":37},{"path":8,"title":39,"icon":40,"stem":41},{"path":9,"title":43,"icon":44,"stem":45},{"path":10,"title":47,"icon":48,"stem":49},{"path":11,"title":79,"icon":52,"stem":53},"Crear clave API",{"id":81,"title":82,"body":83,"createdAt":1008,"description":1009,"extension":1010,"faq":1011,"meta":1012,"navigation":1013,"path":8,"seo":1014,"stem":41,"updatedAt":1008,"__hash__":1015},"content_es\u002Fdocs\u002F3.macos.md","Configura una IP pública en macOS",{"type":84,"value":85,"toc":987},"minimark",[86,90,94,108,111,114,119,124,158,162,165,205,208,212,219,233,236,240,243,250,256,267,271,297,303,306,313,320,365,368,373,377,383,388,395,399,414,417,420,424,427,451,455,469,473,476,482,486,502,508,511,515,518,525,532,536,551,557,604,607,678,685,689,696,700,720,741,745,752,755,796,802,816,819,823,845,849,856,908,911,914,925,937,950,962,968,977,983],[87,88,39],"h1",{"id":89},"macos",[91,92,93],"p",{},"GetPublicIP for Mac conecta tu Mac a tu dirección IP pública. Descarga la configuración por ti, te deja gestionar tus redirecciones de puertos desde la app y se mantiene sincronizada con tu panel. Funciona en macOS 15 Sequoia o posterior, en Mac con Apple silicon y con Intel.",[95,96,97],"blockquote",{},[91,98,99,100,107],{},"Esta app está en fase beta. Si algo no funciona, ",[101,102,106],"a",{"className":103,"href":105},[104],"link","\u002Fcontact-us","contáctanos"," y cuéntanos qué ocurrió.",[91,109,110],{},"De momento la app solo está en inglés, así que esta página muestra sus botones y etiquetas tal como aparecen en ella. Los ajustes del propio macOS aparecen en español.",[112,113],"docs-toc",{},[115,116,118],"h2",{"id":117},"getpublicip-for-mac-beta","GetPublicIP for Mac (beta)",[120,121,123],"h3",{"id":122},"descargar-e-instalar","Descargar e instalar",[125,126,127,138,151],"ol",{},[128,129,130,131,137],"li",{},"Descarga ",[101,132,136],{"href":133,"rel":134},"https:\u002F\u002Frepo.getpublicip.com\u002Fmac\u002FGetPublicIP.dmg",[135],"nofollow","GetPublicIP.dmg",".",[128,139,140,141,144],{},"Ábrelo y arrastra GetPublicIP a la carpeta Aplicaciones. Tiene que ejecutarse desde ahí, porque macOS solo ejecuta extensiones de red de apps que están en Aplicaciones.",[142,143],"br",{},[145,146],"img",{"alt":147,"quality":148,"src":149,"width":150},"La imagen de disco de GetPublicIP, con una flecha desde la app GetPublicIP hasta la carpeta Applications","80","\u002Fimages\u002Fmac-client\u002Fclient-install.png",560,[128,152,153,154,137],{},"Abre GetPublicIP desde Aplicaciones. La app está firmada por GetPublicIP Limited y notarizada por Apple. macOS te pregunta una vez si quieres abrir una app descargada de internet: haz clic en ",[155,156,157],"code",{},"Abrir",[120,159,161],{"id":160},"permitir-la-extensión-de-red","Permitir la extensión de red",[91,163,164],{},"El túnel funciona como una extensión de red, que macOS te pide aprobar una sola vez. Hasta que lo hagas, la app muestra los pasos en la parte superior de su ventana:",[125,166,167,174,180,190,193],{},[128,168,169,170,173],{},"Haz clic en ",[155,171,172],{},"Open System Settings",". Se abre General › Ítems de inicio y extensiones.",[128,175,176,177,137],{},"Desplázate hasta Extensiones y haz clic en ",[155,178,179],{},"Por categoría",[128,181,182,183,185],{},"Haz clic en el botón de información (ⓘ) junto a Extensiones de red.",[142,184],{},[145,186],{"alt":187,"quality":148,"src":188,"width":189},"La sección Extensions de los Ajustes del Sistema, con flechas hacia By Category y hacia el botón de información junto a Network Extensions","\u002Fimages\u002Fmac-client\u002Fclient-extension-category.png",480,[128,191,192],{},"Activa el interruptor junto a GetPublicIP. Debajo de su nombre pone GetPublicIP Tunnel.",[128,194,169,195,137,198,200],{},[155,196,197],{},"Aceptar",[142,199],{},[145,201],{"alt":202,"quality":148,"src":203,"width":204},"La ventana Network Extensions, con flechas hacia el interruptor junto a GetPublicIP y hacia el botón Done","\u002Fimages\u002Fmac-client\u002Fclient-extension-switch.png",471,[91,206,207],{},"El túnel no puede conectarse hasta que la extensión esté activada.",[120,209,211],{"id":210},"iniciar-sesión-con-tu-clave-api","Iniciar sesión con tu clave API",[91,213,214,215,137],{},"La app inicia sesión con la clave API de la dirección IP que quieres usar. Si todavía no tienes una, consulta ",[101,216,218],{"href":217},"\u002Fes\u002Fdocs\u002Fcreate-api-key","Crear una clave API",[125,220,221,227],{},[128,222,223,224,137],{},"Pega tu clave API en la app y haz clic en ",[155,225,226],{},"Sign In",[128,228,229,230,137],{},"La primera vez, macOS te pregunta si GetPublicIP puede añadir una configuración VPN: haz clic en ",[155,231,232],{},"Permitir",[91,234,235],{},"La app descarga la configuración de la dirección y se conecta. No hay ningún archivo de configuración que importar.",[120,237,239],{"id":238},"pestaña-status","Pestaña Status",[91,241,242],{},"La pestaña Status muestra el nombre de tu dirección IP, sus direcciones IPv4 e IPv6 públicas, su ubicación y su estado, el último handshake del túnel y el tráfico enviado y recibido.",[91,244,245],{},[145,246],{"alt":247,"quality":148,"src":248,"width":249},"La pestaña Status con el túnel conectado: el nombre de la dirección IP, sus direcciones IPv4 e IPv6 públicas, la ubicación y el estado, el modo de tráfico saliente, el botón Check y los contadores de tráfico","\u002Fimages\u002Fmac-client\u002Fclient-status.png",700,[91,251,169,252,255],{},[155,253,254],{},"Check"," para ver desde qué dirección sale ahora mismo el tráfico de tu Mac. Con el túnel completo es tu dirección de GetPublicIP; con el túnel dividido, la de tu conexión normal.",[91,257,258,259,262,263,137],{},"Si el túnel está activo pero no ha llegado nada de nuestro servidor en más de tres minutos, la pestaña muestra ",[155,260,261],{},"No response from the server",". Consulta ",[101,264,266],{"href":265},"#soluci%C3%B3n-de-problemas","Solución de problemas",[120,268,270],{"id":269},"pestaña-port-mappings","Pestaña Port Mappings",[91,272,273,274,277,278,281,282,285,286,289,290,293,294,137],{},"Usa ",[155,275,276],{},"Add…",", ",[155,279,280],{},"Edit…"," y ",[155,283,284],{},"Remove"," para gestionar tus redirecciones de puertos y después haz clic en ",[155,287,288],{},"Save",". ",[155,291,292],{},"Revert"," descarta los cambios que aún no hayas guardado. Mientras nuestro servidor aplica un cambio, la pestaña muestra ",[155,295,296],{},"Applying changes on the server…",[91,298,299],{},[145,300],{"alt":301,"quality":148,"src":302,"width":249},"La pestaña Port Mappings con tres redirecciones, la columna Listening on this Mac y la nota sobre los puertos por debajo de 1024","\u002Fimages\u002Fmac-client\u002Fclient-mappings.png",[91,304,305],{},"Cada redirección tiene un puerto público, un puerto interno, un protocolo, una versión de IP, un origen permitido y un comentario. Deja vacío el puerto interno para usar el mismo que el público, y deja vacío el origen permitido para aceptar conexiones desde cualquier dirección.",[91,307,308],{},[145,309],{"alt":310,"quality":148,"src":311,"width":312},"El cuadro de diálogo para añadir una redirección de puertos, con campos para el puerto público, el puerto en este Mac, el protocolo, la versión de IP, el origen permitido y el comentario","\u002Fimages\u002Fmac-client\u002Fclient-mapping-add.png",440,[91,314,315,316,319],{},"La columna ",[155,317,318],{},"Listening"," comprueba si algo en tu Mac acepta conexiones en cada puerto interno:",[321,322,323,329,342,353,359],"ul",{},[128,324,325,328],{},[155,326,327],{},"listening on all addresses",": las conexiones redirigidas pueden llegar a él.",[128,330,331,334,335,281,338,341],{},[155,332,333],{},"only on 127.0.0.1 or ::1, which forwarded connections never reach",": el programa solo acepta conexiones desde este Mac. Configúralo para que escuche en todas las direcciones (",[155,336,337],{},"0.0.0.0",[155,339,340],{},"::",").",[128,343,344,347,348,281,350,352],{},[155,345,346],{},"in use",": para puertos por debajo de 1024. Algo en tu Mac está usando el puerto, pero macOS no deja que la app compruebe en qué dirección escucha, y una nota debajo de la tabla lo indica. Las conexiones redirigidas solo llegan si escucha en todas las direcciones (",[155,349,337],{},[155,351,340],{},"). Docker Desktop lo hace; para cualquier otro programa, revisa su configuración.",[128,354,355,358],{},[155,356,357],{},"nothing listening",": inicia el programa o comprueba que su puerto coincide con el puerto interno.",[128,360,361,364],{},[155,362,363],{},"connect to check",": el túnel está desactivado, así que todavía no hay nada contra lo que comprobar.",[91,366,367],{},"macOS no permite que las apps en sandbox como esta enumeren los sockets abiertos, así que la columna no puede nombrar el programa como lo hace GetPublicIP for Windows.",[91,369,370,371,137],{},"No hay reglas de firewall que añadir. El firewall de macOS está desactivado salvo que lo hayas activado tú, y funciona por app, no por puerto. Si lo tienes activado, consulta ",[101,372,266],{"href":265},[120,374,376],{"id":375},"pestaña-connection","Pestaña Connection",[91,378,379],{},[145,380],{"alt":381,"quality":148,"src":382,"width":249},"La pestaña Connection, con las secciones Outbound traffic, DNS, When to connect y API key","\u002Fimages\u002Fmac-client\u002Fclient-connection.png",[384,385,387],"h4",{"id":386},"sección-when-to-connect","Sección «When to connect»",[91,389,390,391,394],{},"Con ",[155,392,393],{},"Reconnect automatically"," activado, macOS mantiene el túnel activo tras un reinicio, después del reposo o al cambiar de red, aunque GetPublicIP esté cerrada. Si desactivas el túnel a mano, deja de hacerlo hasta que vuelvas a conectarte.",[384,396,398],{"id":397},"sección-outbound-traffic","Sección «Outbound traffic»",[321,400,401,408],{},[128,402,403,407],{},[404,405,406],"strong",{},"Full tunnel: send all traffic through my GetPublicIP address."," Todo lo que envía tu Mac sale desde tu dirección de GetPublicIP. Es la opción predeterminada.",[128,409,410,413],{},[404,411,412],{},"Split tunnel: use my normal connection for outbound traffic."," La navegación, las actualizaciones y el resto del tráfico saliente usan tu propia conexión.",[91,415,416],{},"En los dos modos, las conexiones a tus redirecciones de puertos entran a través de GetPublicIP y sus respuestas vuelven por el mismo camino. Cambiar de modo reinicia el túnel.",[91,418,419],{},"En el Mac no hay interruptor de apagado. El que macOS ofrece a las apps de VPN descarta las conexiones TCP entrantes después de su primer paquete, lo que rompería todas las redirecciones de puertos TCP.",[384,421,423],{"id":422},"sección-dns","Sección «DNS»",[91,425,426],{},"Esta opción solo se aplica con el túnel completo. Con el túnel dividido siempre se usan los servidores DNS de tu red.",[321,428,429,435,441],{},[128,430,431,434],{},[404,432,433],{},"Cloudflare public DNS",": la opción predeterminada.",[128,436,437,440],{},[404,438,439],{},"My network's DNS servers",": las consultas usan los servidores de tu red y salen fuera del túnel.",[128,442,443,446,447,450],{},[404,444,445],{},"Custom",": introduce hasta tres servidores DNS públicos por versión de IP y haz clic en ",[155,448,449],{},"Apply",". Aquí no se puede usar un servidor DNS local, como un Pi-hole o tu router.",[384,452,454],{"id":453},"sección-api-key","Sección «API key»",[321,456,457,463],{},[128,458,459,462],{},[404,460,461],{},"Download Configuration Again",": descarga una copia nueva de la configuración, si nuestro equipo de soporte te lo pide.",[128,464,465,468],{},[404,466,467],{},"Sign Out…",": desconecta y elimina la configuración y la clave API de este Mac. Tu dirección IP y sus redirecciones de puertos se quedan como están.",[120,470,472],{"id":471},"pestaña-log","Pestaña Log",[91,474,475],{},"La pestaña Log muestra lo que ha ido haciendo el túnel, como las conexiones y los handshakes con nuestro servidor.",[91,477,478],{},[145,479],{"alt":480,"quality":148,"src":481,"width":249},"La pestaña Log, con mensajes del túnel y su hora","\u002Fimages\u002Fmac-client\u002Fclient-log.png",[120,483,485],{"id":484},"pestaña-support","Pestaña Support",[91,487,488,489,492,493,496,497,501],{},"Si algo no funciona, haz clic en ",[155,490,491],{},"Create Report"," y después en ",[155,494,495],{},"Copy Report",", y pega el informe en tu mensaje cuando ",[101,498,500],{"className":499,"href":105},[104],"nos escribas",". El informe recoge el túnel, tus redirecciones de puertos y lo que escucha en ellas, tu DNS, otras VPN, tus rutas de red y el registro reciente.",[91,503,504],{},[145,505],{"alt":506,"quality":148,"src":507,"width":249},"La pestaña Support con un informe: su resumen y el estado del túnel","\u002Fimages\u002Fmac-client\u002Fclient-support.png",[91,509,510],{},"Incluye las direcciones IP y la configuración de red de tu Mac. Nunca incluye tu clave API ni la clave privada del túnel.",[120,512,514],{"id":513},"barra-de-menús","Barra de menús",[91,516,517],{},"El icono de GetPublicIP en la barra de menús muestra si el túnel está conectado y te da acceso a tus direcciones públicas, al interruptor del túnel y a la ventana de la app. El túnel sigue funcionando cuando sales de GetPublicIP. En Settings › General decides si la app se abre al iniciar sesión y si aparece en la barra de menús, en el Dock o en ambos.",[91,519,520],{},[145,521],{"alt":522,"quality":148,"src":523,"width":524},"El menú de GetPublicIP en la barra de menús, con el estado de la conexión, el interruptor del túnel y las dos direcciones públicas","\u002Fimages\u002Fmac-client\u002Fclient-menubar.png",300,[91,526,527],{},[145,528],{"alt":529,"quality":148,"src":530,"width":531},"Settings › General, con las opciones para abrir la app al iniciar sesión y mostrar GetPublicIP en el Dock y en la barra de menús","\u002Fimages\u002Fmac-client\u002Fclient-settings.png",450,[120,533,535],{"id":534},"línea-de-comandos","Línea de comandos",[91,537,538,539,542,543,546,547,550],{},"GetPublicIP for Mac incluye un comando ",[155,540,541],{},"getpublicip"," con los mismos comandos que el cliente de Linux. Está desactivado hasta que lo activas en Settings › General › Command line › ",[155,544,545],{},"Allow the getpublicip command",". Ahí mismo, los ajustes muestran el comando que lo enlaza en tu ",[155,548,549],{},"PATH",":",[91,552,553],{},[145,554],{"alt":555,"quality":148,"src":556,"width":531},"Settings › General, con la sección Updates y, en la sección Command line, el interruptor y el comando de instalación","\u002Fimages\u002Fmac-client\u002Fclient-settings-command-line.png",[558,559,564],"pre",{"className":560,"code":561,"language":562,"meta":563,"style":563},"language-bash shiki shiki-themes monokai","sudo mkdir -p \u002Fusr\u002Flocal\u002Fbin && sudo ln -sf \"\u002FApplications\u002FGetPublicIP.app\u002FContents\u002FHelpers\u002Fgetpublicip\" \u002Fusr\u002Flocal\u002Fbin\u002Fgetpublicip\n","bash","",[155,565,566],{"__ignoreMap":563},[567,568,571,575,579,583,586,590,592,595,598,601],"span",{"class":569,"line":570},"line",1,[567,572,574],{"class":573},"sHkqI","sudo",[567,576,578],{"class":577},"s_Ekj"," mkdir",[567,580,582],{"class":581},"s7s5_"," -p",[567,584,585],{"class":577}," \u002Fusr\u002Flocal\u002Fbin",[567,587,589],{"class":588},"sCdxs"," && ",[567,591,574],{"class":573},[567,593,594],{"class":577}," ln",[567,596,597],{"class":581}," -sf",[567,599,600],{"class":577}," \"\u002FApplications\u002FGetPublicIP.app\u002FContents\u002FHelpers\u002Fgetpublicip\"",[567,602,603],{"class":577}," \u002Fusr\u002Flocal\u002Fbin\u002Fgetpublicip\n",[91,605,606],{},"Algunos comandos:",[558,608,610],{"className":560,"code":609,"language":562,"meta":563,"style":563},"getpublicip status              # the address, the tunnel and where your traffic leaves from\ngetpublicip up --mode split     # connect in split tunnel\ngetpublicip ports               # forwarded ports and what listens behind each one\ngetpublicip ports add 8443      # forward TCP 8443 on IPv4 and IPv6\ngetpublicip doctor              # check the install, the tunnel, the firewall and every port\n",[155,611,612,623,640,651,667],{"__ignoreMap":563},[567,613,614,616,619],{"class":569,"line":570},[567,615,541],{"class":573},[567,617,618],{"class":577}," status",[567,620,622],{"class":621},"snpHw","              # the address, the tunnel and where your traffic leaves from\n",[567,624,626,628,631,634,637],{"class":569,"line":625},2,[567,627,541],{"class":573},[567,629,630],{"class":577}," up",[567,632,633],{"class":581}," --mode",[567,635,636],{"class":577}," split",[567,638,639],{"class":621},"     # connect in split tunnel\n",[567,641,643,645,648],{"class":569,"line":642},3,[567,644,541],{"class":573},[567,646,647],{"class":577}," ports",[567,649,650],{"class":621},"               # forwarded ports and what listens behind each one\n",[567,652,654,656,658,661,664],{"class":569,"line":653},4,[567,655,541],{"class":573},[567,657,647],{"class":577},[567,659,660],{"class":577}," add",[567,662,663],{"class":581}," 8443",[567,665,666],{"class":621},"      # forward TCP 8443 on IPv4 and IPv6\n",[567,668,670,672,675],{"class":569,"line":669},5,[567,671,541],{"class":573},[567,673,674],{"class":577}," doctor",[567,676,677],{"class":621},"              # check the install, the tunnel, the firewall and every port\n",[91,679,680,681,684],{},"El comando no pide confirmación. Mientras está activado, cualquier programa que se ejecute con tu usuario puede usarlo para conectar, desconectar, cambiar tus redirecciones de puertos o cerrar la sesión de la app. Actívalo solo si lo vas a usar. Nunca acepta la clave API como argumento: ",[155,682,683],{},"getpublicip login"," te la pide.",[120,686,688],{"id":687},"actualizaciones","Actualizaciones",[91,690,691,692,695],{},"La app busca actualizaciones por sí sola y te avisa cuando hay una lista para instalar. La sección Updates de los ajustes define qué pasa cuando sale una versión nueva, y ",[155,693,694],{},"Check Now"," busca al momento.",[120,697,699],{"id":698},"desinstalar","Desinstalar",[125,701,702,708,717],{},[128,703,704,705,707],{},"En la pestaña Connection, haz clic en ",[155,706,467],{},". Así se eliminan la configuración y la clave API de tu Mac.",[128,709,710,711,713,714,716],{},"Abre Ajustes del Sistema › General › Ítems de inicio y extensiones. En Extensiones, elige ",[155,712,179],{}," y haz clic en el botón de información (ⓘ) junto a Extensiones de red. Haz clic en el botón de tres puntos (…) junto al interruptor de GetPublicIP y elige Eliminar extensión. Haz clic en ",[155,715,699],{}," y, después, introduce la contraseña de tu Mac.",[128,718,719],{},"Sal de GetPublicIP desde su icono de la barra de menús y después mueve la app de Aplicaciones a la Papelera.",[91,721,722,723,728,729,732,733,736,737,740],{},"En teoría, macOS elimina la extensión de red de una app cuando la app va a la Papelera, pero ",[101,724,727],{"href":725,"rel":726},"https:\u002F\u002Fobdev.at\u002Fblog\u002Fdeletion-impossible-2\u002F",[135],"se ha informado de que macOS 15.3 y macOS 26 la dejan instalada",", así que el paso 2 la elimina primero. Para comprobarlo, ejecuta ",[155,730,731],{},"systemextensionsctl list"," en Terminal. Si una línea de ",[155,734,735],{},"com.getpublicip.mac"," sigue mostrando ",[155,738,739],{},"[activated enabled]",", la extensión sigue instalada.",[115,742,744],{"id":743},"docker-desktop","Docker Desktop",[91,746,747,748,751],{},"Si tu servicio se ejecuta en un contenedor de Docker Desktop, ve a todos los visitantes como ",[155,749,750],{},"192.168.65.1"," en lugar de con su dirección real. Tus registros solo muestran esa dirección, y todo lo que dentro del contenedor actúa según la dirección del visitante ve un único visitante: los límites de peticiones, fail2ban y CrowdSec, el bloqueo geográfico y las listas de direcciones permitidas.",[91,753,754],{},"El túnel no es la causa. En nuestra prueba del 3 de noviembre de 2026 (Docker Desktop 4.96.3, nginx detrás de una redirección de puertos TCP), el Mac y el contenedor vieron la misma petición de forma distinta:",[756,757,758,771],"table",{},[759,760,761],"thead",{},[762,763,764,768],"tr",{},[765,766,767],"th",{},"Dónde",[765,769,770],{},"Dirección del visitante",[772,773,774,787],"tbody",{},[762,775,776,784],{},[777,778,779,780,783],"td",{},"El Mac (",[155,781,782],{},"lsof -iTCP:80",")",[777,785,786],{},"la dirección real del visitante",[762,788,789,792],{},[777,790,791],{},"nginx en el contenedor",[777,793,794],{},[155,795,750],{},[91,797,798,799,801],{},"Docker Desktop ejecuta los contenedores en una máquina virtual Linux. Un proceso de Docker en tu Mac ocupa cada puerto publicado, acepta la conexión y abre otra nueva hacia la máquina virtual, así que la dirección del visitante se pierde antes de que el contenedor vea nada. ",[155,800,750],{}," es la puerta de enlace del propio Docker dentro de esa máquina.",[91,803,804,805,810,811,341],{},"Ningún ajuste de Docker Desktop lo cambia. La petición a Docker para conservar la dirección, ",[101,806,809],{"href":807,"rel":808},"https:\u002F\u002Fgithub.com\u002Fdocker\u002Froadmap\u002Fissues\u002F157",[135],"docker\u002Froadmap#157",", lleva abierta desde 2020. OrbStack tiene la misma limitación (",[101,812,815],{"href":813,"rel":814},"https:\u002F\u002Fgithub.com\u002Forbstack\u002Forbstack\u002Fissues\u002F710",[135],"orbstack#710",[91,817,818],{},"El origen permitido de una redirección sigue funcionando, porque nuestro servidor lo aplica antes de que el tráfico llegue a tu Mac.",[120,820,822],{"id":821},"qué-hacer-en-su-lugar","Qué hacer en su lugar",[321,824,825,831],{},[128,826,827,830],{},[404,828,829],{},"Ejecuta el servicio directamente en macOS",", fuera de Docker. Un programa que escucha en tu Mac ve la dirección real de cada visitante, por IPv4 e IPv6, con TCP y UDP.",[128,832,833,836,837,840,841,844],{},[404,834,835],{},"Pon un proxy inverso en tu Mac, delante del contenedor."," Ejecútalo directamente en macOS (por ejemplo, desde Homebrew), apunta a él el puerto interno de tu redirección y haz que reenvíe al contenedor. En sitios web, el proxy pasa la dirección del visitante en la cabecera ",[155,838,839],{},"X-Forwarded-For","; configura tu app para que solo confíe en esa cabecera cuando venga del proxy. En otros servicios TCP, algunos proxies, como HAProxy, pueden pasarla con el protocolo PROXY, si el servicio del contenedor lo admite. Publica el puerto del contenedor solo en ",[155,842,843],{},"127.0.0.1",", para que nada pueda llegar a él sin pasar por el proxy. Esto no sirve para UDP.",[120,846,848],{"id":847},"publicar-en-ipv4-e-ipv6","Publicar en IPv4 e IPv6",[91,850,851,852,855],{},"Un puerto publicado con una dirección, como ",[155,853,854],{},"\"0.0.0.0:80:80\"",", hace que Docker Desktop escuche solo en IPv4, así que se rechaza la mitad IPv6 de tu redirección. Quita la dirección para publicar en los dos:",[558,857,861],{"className":858,"code":859,"language":860,"meta":563,"style":563},"language-yaml shiki shiki-themes monokai","services:\n  web:\n    image: nginx:stable-alpine\n    ports:\n      - \"80:80\"        # IPv4 and IPv6. \"0.0.0.0:80:80\" would be IPv4 only\n","yaml",[155,862,863,872,879,890,897],{"__ignoreMap":563},[567,864,865,869],{"class":569,"line":570},[567,866,868],{"class":867},"s8I7P","services",[567,870,871],{"class":588},":\n",[567,873,874,877],{"class":569,"line":625},[567,875,876],{"class":867},"  web",[567,878,871],{"class":588},[567,880,881,884,887],{"class":569,"line":642},[567,882,883],{"class":867},"    image",[567,885,886],{"class":588},": ",[567,888,889],{"class":577},"nginx:stable-alpine\n",[567,891,892,895],{"class":569,"line":653},[567,893,894],{"class":867},"    ports",[567,896,871],{"class":588},[567,898,899,902,905],{"class":569,"line":669},[567,900,901],{"class":588},"      - ",[567,903,904],{"class":577},"\"80:80\"",[567,906,907],{"class":621},"        # IPv4 and IPv6. \"0.0.0.0:80:80\" would be IPv4 only\n",[91,909,910],{},"Probamos las dos formas a través de una redirección de puertos de GetPublicIP: con la dirección, se rechazaron las conexiones IPv6; sin ella, tanto IPv4 como IPv6 llegaron al contenedor.",[115,912,266],{"id":913},"solución-de-problemas",[91,915,916,921,922,137],{},[404,917,918,919,137],{},"La pestaña Status muestra ",[155,920,261],{}," El túnel está en marcha, pero nuestro servidor no responde. Comprueba que la red en la que estás permite UDP saliente al puerto 51820; algunas redes de empresa, de hotel y de invitados lo bloquean. También puede bloquearlo otra VPN o un producto de seguridad de tu Mac. Si el problema continúa, ",[101,923,106],{"className":924,"href":105},[104],[91,926,927,930,931,933,934,936],{},[404,928,929],{},"Una redirección de puertos no conecta."," Revisa la columna ",[155,932,318],{}," en la pestaña Port Mappings. Un programa que solo escucha en ",[155,935,843],{}," no es accesible desde internet: configúralo para que escuche en todas las direcciones.",[91,938,939,942,943,945,946,949],{},[404,940,941],{},"El firewall de macOS bloquea las conexiones redirigidas."," Con «Bloquear todas las conexiones entrantes» activado, también se bloquean las conexiones redirigidas. Desactívalo en Ajustes del Sistema › Red › Firewall › Opciones… Con el firewall activado pero esa opción desactivada, puede que macOS pregunte una vez por cada programa si puede aceptar conexiones entrantes: haz clic en ",[155,944,232],{},". La app no puede leer los ajustes del firewall, pero ",[155,947,948],{},"getpublicip doctor"," sí, y te informa de ellos.",[91,951,952,955,956,961],{},[404,953,954],{},"Tu Mac deja de responder al cabo de un rato."," Un Mac en reposo no responde a nada. Los ",[101,957,960],{"href":958,"rel":959},"https:\u002F\u002Fsupport.apple.com\u002Fes-es\u002Fguide\u002Fmac-help\u002Fmchle41a6ccd\u002Fmac",[135],"ajustes de reposo y activación"," de Apple están en Ajustes del Sistema › Energía en un Mac de escritorio: activa «Impedir que el Mac entre en reposo automáticamente cuando se apaga la pantalla». En un MacBook, ve a Ajustes del Sistema › Batería › Opciones… y activa «Impedir que el Mac entre en reposo automáticamente si está conectado a un adaptador de corriente cuando se apaga la pantalla». Un MacBook con la tapa cerrada entra en reposo, salvo que esté conectado a la corriente y tenga una pantalla externa conectada.",[91,963,964,967],{},[404,965,966],{},"Un servicio UDP con el túnel dividido."," Un servidor UDP que escucha en todas las direcciones enviaría sus respuestas por tu conexión normal. La app dirige cada cliente nuevo de una redirección UDP por el túnel en cuanto llega su primer paquete, así que las respuestas salen desde tu dirección de GetPublicIP. El UDP que un servicio envía por iniciativa propia, a una dirección que todavía no le ha enviado nada, sigue saliendo por tu conexión normal. Para evitarlo, haz que el servicio escuche en la dirección del túnel que muestra la pestaña Port Mappings, o usa el túnel completo. Los servicios TCP no se ven afectados.",[91,969,970,973,974,976],{},[404,971,972],{},"Hay otra VPN conectada."," Desconéctala mientras uses GetPublicIP. ",[155,975,948],{}," indica cualquier otra VPN que esté conectada.",[91,978,979,982],{},[404,980,981],{},"Solo un dispositivo por dirección IP."," No uses la misma clave API en otro ordenador ni en la imagen de Docker al mismo tiempo. Dos dispositivos con la misma clave se pelean por la conexión.",[984,985,986],"style",{},"html pre.shiki code .sHkqI, html code.shiki .sHkqI{--shiki-default:#A6E22E}html pre.shiki code .s_Ekj, html code.shiki .s_Ekj{--shiki-default:#E6DB74}html pre.shiki code .s7s5_, html code.shiki .s7s5_{--shiki-default:#AE81FF}html pre.shiki code .sCdxs, html code.shiki .sCdxs{--shiki-default:#F8F8F2}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html pre.shiki code .snpHw, html code.shiki .snpHw{--shiki-default:#88846F}html pre.shiki code .s8I7P, html code.shiki .s8I7P{--shiki-default:#F92672}",{"title":563,"searchDepth":625,"depth":625,"links":988},[989,1003,1007],{"id":117,"depth":625,"text":118,"children":990},[991,992,993,994,995,996,997,998,999,1000,1001,1002],{"id":122,"depth":642,"text":123},{"id":160,"depth":642,"text":161},{"id":210,"depth":642,"text":211},{"id":238,"depth":642,"text":239},{"id":269,"depth":642,"text":270},{"id":375,"depth":642,"text":376},{"id":471,"depth":642,"text":472},{"id":484,"depth":642,"text":485},{"id":513,"depth":642,"text":514},{"id":534,"depth":642,"text":535},{"id":687,"depth":642,"text":688},{"id":698,"depth":642,"text":699},{"id":743,"depth":625,"text":744,"children":1004},[1005,1006],{"id":821,"depth":642,"text":822},{"id":847,"depth":642,"text":848},{"id":913,"depth":625,"text":266},"2026-11-05","Conecta tu Mac a tu dirección IP pública con GetPublicIP for Mac (beta): instálalo, permite la extensión de red, inicia sesión con tu clave API y redirige puertos.","md",null,{},{"title":39,"icon":40},{"title":82,"description":1009},"deB2S_oldjtK3QczLqoBrWC-I11EH3KKeam6sAStpIA",1793914037787]