К проекту Django невозможно получить доступ, используя IPV6-адрес

Я запускаю свой проект Django на сервере ubuntu. Я изменил разрешенный хост в settings.py

ALLOWED_HOSTS = ['my_IPV4', 'my_IPV6', 'localhost']

Я разрешил доступ к порту 8000 по sudo ufw allow 8000.

Я запускаю сервер по python manage.py runserver 0.0.0.0:8000, однако я могу получить доступ только к IPV4-адресу, а IPV6-адрес на порту 8000 недоступен. Мой IPV6-адрес активен, но порт 8000, похоже, не работает. Я что-то упустил при настройке IPV6?

Добавьте "[::1]" в параметре Разрешенный хост, затем выполните :

python manage.py runserver --ipv6 "[::1]:8000"

Ссылка: https://docs.djangoproject.com/en/4.0/ref/settings/#allowed-hosts

Я прочитал документацию об IPV6 и получил некоторые ответы, вы должны поместить IPV6 в квадратные скобки.

Localhost для IPV6: ::1

Любой адрес для IPV6 : :: (для IPV4 это 0.0.0.0)

Так что в settings.py AllOWED_HOSTS должен быть ['my_IPV4', '[my_IPV6]', 'localhost']

Команда Django run server: python manage.py runserver [::]:8000

Для доступа к IPV6-адресу с портом используйте https://[IPV6 address]:8000

Для доступа к IPV6-адресу даже без номера порта вам понадобятся скобки для URL

http://[fe80::b746:6473:e65f:5dd4]/foo/bar

http://[fe80::b746:6473:e65f:5dd4]:8000/foo/bar

Ссылка https://cheat.readthedocs.io/en/latest/ipv6.html

Вернуться на верх