Запуск приложения Spring в локальной сети IP 192.168.XX

java
Вопрос: Я запускаю свое веб-приложение Spring на localhost, так что оба адреса работают: HTTP://локальный: 9999/приложение Я также хотел бы, чтобы это приложение выполнялось на конкретном IP-адресе моей машины (чтобы получить доступ к нему с мобильного устройства, но это менее важно здесь). Я использовал ipconfig для получения своего IPv4, но когда я его использую так:

Вопрос:

Я запускаю свое веб-приложение Spring на localhost, так что оба адреса работают:

HTTP://локальный: 9999/приложение

Я также хотел бы, чтобы это приложение выполнялось на конкретном IP-адресе моей машины (чтобы получить доступ к нему с мобильного устройства, но это менее важно здесь). Я использовал ipconfig для получения своего IPv4, но когда я его использую так:

Я получаю “этот сайт не может быть достигнут”. Это все еще на моей локальной машине, а не на мобильном. Есть ли что-то еще, что я должен настроить, чтобы заставить его работать?

EDIT: здесь PrintScreen, иллюстрирующий проблему. Я не думаю, что это вопрос конфигурации приложения, потому что серверная консоль должна отображаться во всех случаях, даже если приложение не развернуто или работает.

enter image description here

Ответ №1

все, что вам нужно сделать, это добавить это в свои app.properties (или как вы назвали файл свойств весны)

server.address=<your_ip>

как описано здесь

Ответ №2

По умолчанию DHCP назначит вам IP-адрес, который изменится. Вам необходимо установить статический IP-адрес для вашей машины. Проверьте ссылки

Для Windows

Если ваша операционная система не является окном, вы можете найти инструкции для вашей операционной системы установить статический IP-адрес в Интернете.

Важное примечание. Убедитесь, что порт включен в системном брандмауэре или в ваших настройках антивируса. Это не будет работать иначе.

Ответ №3

На скриншоте и новой информации о том, что “клиент и сервер находятся на одной машине”, я googled для проблем в WildFly и задаюсь вопросом, нужно ли вам настроить свой IP-адрес в этом ответе: JBoss WildFly: запускается, но не может подключиться?

Также посмотрите на эту страницу (multihomed): http://blog.arungupta.me/bind-wildfly-different-ip-address-multihomed/, вам может потребоваться сделать:

standalone.sh -b=192.168.1.4

[Я оставлю эту часть неповрежденной, если дело дойдет до этого вопроса и захочет отладить аналогичные проблемы]

IP-адрес, используемый вами [192.168.xx], может использоваться только в ЧАСТНОЙ СЕТИ. См.: https://en.wikipedia.org/wiki/Private_network

Поэтому трудно ответить на вопрос, не зная, находятся ли ваш клиент и сервер на одном компьютере, в той же сети или в разных сетях.

  • 1) является вашим клиентом на том же компьютере, что и сервер: тогда использование этого 192.168.xx IP должно работать, да. Если они находятся на одной машине, то она не должна даже доходить до сетевой карты, все это происходит в ОС [или выше] = проблема с ОС или конфигурацией приложения. Некоторые предложения в этом случае: можете ли вы проверить C:WindowsSystem32driversetchosts [/etc/hosts on * nix], чтобы увидеть, есть ли там что-то назад (например: сначала поставить хост и IP-адрес), , Кроме того, можете ли вы попробовать разместить http://перед своим IP-адресом, просто для ударов? В противном случае: если ваш клиент находится на другой машине, чем ваш сервер, нам нужно знать:
    • 2) ваш клиент и сервер в той же подсети (например: подключен к одному маршрутизатору)? Если да, то вы можете использовать IP-адрес формата 192.168.xx, и ваши проблемы могут быть вызваны правилами брандмауэра на вашем сервере (или другом). Но мы можем заставить его работать с более подробной информацией.
    • 3) является вашим клиентом и сервером в разных подсетях или совершенно разных сетях (например: вы пытаетесь подключиться с вашего ноутбука к серверу на AmazonWebService или в другом месте в Интернете). В этом случае вы не сможете вызывать ваш сервер с IP-адресом формата 192.168.xx, поскольку этот диапазон IP находится только в локальной подсети. Найдите PUBLIC IP для вашего сервера. Например, в AWS у вас есть частные и публичные IP-адреса. Если ваш сервер находится в домашней сети, вам может потребоваться настроить DMZ (демилитаризованная зона) и/или трансляция сетевых адресов, чтобы ваш маршрутизатор мог пересылать входящие HTTP-запросы на ваш сервер на основе, например, номеров портов сервера и т.д.

Ответ №4

У меня та же проблема. Моя цель – запустить приложение Springboot в Windows и разрешить моему мобильному телефону доступ к приложению. Я решил свою проблему с помощью: 1. Установите статический IP-адрес, как указано выше.

Я использую командную строку для запуска ipconfig и вижу

IP address=192.168.1.99 Subnet Mark=255.255.255.0 Default gateway = 192.168.1.1

Затем я копирую эти значения для настройки статического IP-адреса.
Я установил предпочтительный DSN Servr = 192.168.1.1 и оставил альтернативный DNS-сервер пустым.

Оцените статью
Добавить комментарий