Рейтинг:0

адрес сервера и ip в ubuntu 20.04

флаг ru

Я мало использовал Ubuntu, только когда мне нужно развернуть сеть. Прямо сейчас я пытаюсь развернуть сеть python django, но у меня проблема с IP-адресом.

Итак, я попытался сервер запуска python manage.py сначала, и это дало ошибки тайм-аута. Адрес сервера, который мне сообщил мой супервайзер и к которому я могу получить доступ только через шпатлевку, — xxx.yy.zzz.aaa. Когда я попытался развернуть свой python django web специально по этому адресу, используя сервер запуска python manage.py xxx.yy.zzz.aaa:8000, я получаю сообщение об ошибке

этот IP-адрес не может быть назначен.

Я использовал несколько других портов, таких как 8001, но все равно это не сработало.

Итак, я использовал следующую команду, чтобы узнать, что такое IP-адрес.

ifconfig

И у меня получилось три адреса: один localhost (127.0.0.1), другой связан с докером, который я не создавал. Третий находится под именем хоста enp---, но это нет ххх.гг.ззз.ааа. Это совершенно другое.

Итак, я еще немного погуглил и использовал следующую команду.

завиток https://ipinfo.io/ip

Затем я получаю «правильный» адрес xxx.yy.zzz.aaa.

Я мало что знаю о сети и IP-адресах в Ubuntu, но может ли Ubuntu иметь разные IP-адреса, кроме IP-адреса докера? Если да, то как я могу установить IP-адрес, чтобы я мог использовать xxx.yy.zzz.aaa для развертывания python django web?

флаг uz
Jos
Насколько я понимаю, серверный процесс Django прослушивает входящие соединения на заданном порту, который по умолчанию равен 8080. Возможно, этот порт уже занят другим процессом. Либо разверните свой веб-сайт Django на другом порту, либо узнайте, какой процесс запущен на этом порту (`sudo netstat -tulpn`), и уничтожьте его.
beginnercoder avatar
флаг ru
@Jos Jenkins работает на порту 8080, поэтому я попытался запустить Django на порту 8000, используя ```python manage.py runserver xxx.yy.zzz.aaa:8000```, но все равно это не работает. Я сделал то же самое для всех других адресов, включая докер на всякий случай, но все равно не повезло.
флаг uz
Jos
Это полезная информация. Пожалуйста, добавьте его к своему вопросу (комментарии иногда очищаются).
beginnercoder avatar
флаг ru
@Jos, только что отредактировал мой вопрос. Спасибо.
raj avatar
флаг cn
raj
Ваш сервер, вероятно, находится за NAT, и публичный (внешний) IP-адрес xxx.yy.zzz.aaa транслируется во внутренний (частный), который вы видите на интерфейсе enp---. Перевод сделан, вероятно, где-то **за пределами** вашего сервера. Вам нужно получить больше информации об этом NAT, потому что единственное, что вы знаете прямо сейчас, это то, что NAT перенаправляет запросы на порт 22 (ssh) на xxx.yy.zzz.aaa на ваш сервер Ubuntu. Неизвестно, перенаправляет ли он какие-либо другие порты, которые вы можете использовать для своего веб-приложения.
beginnercoder avatar
флаг ru
@raj спасибо. Затем я должен найти больше о NAT и всей этой ситуации с переводом IP-адреса. Между тем, вы случайно не знаете, если и как я могу использовать внешний IP-адрес для развертывания django? Если я правильно понял, у меня должен быть доступ к django, когда я разверну его на 0: 8000, но сейчас я не могу.
raj avatar
флаг cn
raj
Без знаний о конфигурации NAT сложно сказать, на какой адрес и порт можно развернуть приложение и возможно ли это вообще без изменения конфигурации NAT.
beginnercoder avatar
флаг ru
@raj хорошо, понял. Спасибо. По крайней мере, теперь я знаю, как мне поступить.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.