LINUX.ORG.RU
ФорумAdmin

hostname alias для домашнего роутера

 , , , ,


0

2

Доброго времени суток. Такой вопрос возник, захотелось мне написать alias для айпишника роутера его ip условно следующий

191.160.40.1

в /etc/hosts прописал:

191.160.40.1 router

Так вот, если я ввожу ip в браузер(без указания чего-либо, даже протокл не пишу), то попадаю в админку моего роутера, но если пишу просто router, то мне выбрасывается ошибка nginx 502 bad gateway.

С чем такая проблема может быть связана и что можно почитать, чтобы понять в чем суть? Потому что ping по этому hostname добивает, значит мой «alias» засетился. Как я понимаю, браузер должен пойти в /etc/hosts/ увидеть, что там router - ip 191.160.40.1 и подставить его вместо router. Он вроде это и делает, только почему-то, как будто, браузер когда обычный ip получает, понимает, куда нужно к роутеру подключиться, а когда такой вот hostname, он просто в тупую заменяет на ip и попадает не туда

Вот даже через curl попробовал, все заменяется вроде, но почему-то ответы разные совсем приходят. Единственное отличие - заголов host. В одном случае там ip стоит, а в другом мой прописанный Hostname

➜  ~ curl -v 191.160.40.1
*   Trying 191.160.40.1:80...
* Connected to 191.160.40.1 (191.160.40.1) port 80 (#0)
> GET / HTTP/1.1
> Host: 191.160.40.1
> User-Agent: curl/7.72.0
> Accept: */*
> 
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
< Server: nginx
< Date: Mon, 22 Feb 2021 18:52:22 GMT
< Content-Type: text/html
< Content-Length: 1770
➜  ~ curl -v router      
*   Trying 191.160.40.1:80...
* Connected to router (191.160.40.1) port 80 (#0)
> GET / HTTP/1.1
> Host: router
> User-Agent: curl/7.72.0
> Accept: */*
> 
* Mark bundle as not supporting multiuse
< HTTP/1.1 502 Bad Gateway
< Server: nginx
< Date: Mon, 22 Feb 2021 18:54:55 GMT
< Content-Type: text/html
< Content-Length: 166

Если эта инфа как-то нужна, то

  • Роутер - Xiaomi
  • ОС - arch

Все зависит от настройки веб сервера, который обрабатывает запросы.

В общем случае веб сервер может отдавать несколько сайтов с одного ip адреса.

В этом случае какой сайт ему нужно отдать определяется по запршенному доменному имени.

Для каждого доменного имени создаётся файл конфигурации в котором прописывается servername равный доменному имени и указывается откуда отдавать страницы.

Также может быть активизирован конфигурационный файл с настройками по умолчанию (default) который будет срабатывать когда с веб сервера запросят доменное имя для которого нет конфигурации или ip адрес.

anonymous
()
Ответ на: комментарий от urxvt

целый nginx

так он в принципе не большой… и не очень жручий

Shulman
()
Ответ на: комментарий от urxvt

Конечно правильный, миллион раз проверил и curl, если я указываю мой алиасный hostname, понимает его правильно, только сервак не может понять, что к чему почему-то

wh75per
() автор топика

GET / HTTP/1.1 Host: router … HTTP/1.1 502 Bad Gateway Server: nginx

Ну и чему ты удивляешься? Nginx пытается это зафорвардить, оно не знает что это ему прилетело. Сообщи nginx-у, что router - это его хост и есть.

anonymous
()

Ip то белый и имя у него уже есть, проверь как он у тебя резолвится, у меня и что за DNS отвечает

 nslookup 191.160.40.1
Server:         127.0.0.1
Address:        127.0.0.1#53

Non-authoritative answer:
1.40.160.191.in-addr.arpa       name = 1.40.160.191.isp.timbrasil.com.br.

Почему по белому, а не по серому ты к нему обращаешся, ты не в его серой сети? Веб морда обычно на внешнем IP прикрыта, неужели ксиоми разрешил откуда угодно админить?

alex_sim ★★★★
()
Последнее исправление: alex_sim (всего исправлений: 2)
Ответ на: комментарий от anonymous

Если я вручную Host прописываю на Hostname роутера, то все работает. Но я же не могу в браузере каждый раз это делать, меня интересует алиас, которым можно будет пользоваться. Да, я могу сделать закладку в браузере, но это не интересно…

curl -v router -H "Host: 191.160.40.1"
*   Trying 191.160.40.1:80...
* Connected to router (191.160.40.1) port 80 (#0)
> GET / HTTP/1.1
> Host: 191.160.40.1
> User-Agent: curl/7.72.0
> Accept: */*
> 
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
< Server: nginx
< Date: Wed, 24 Feb 2021 14:56:42 GMT
< Content-Type: text/html
< Content-Length: 1770
wh75per
() автор топика
Ответ на: комментарий от wh75per

Попробуй в ddns указать, или ставь нормальную прошивку.

boowai ★★★★
()

вроде все нормальные(да и не нормальные) роутеры позволяют присвоить себе «имя» в настройках. Просто просмотри/поищи настройки.

Atlant ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.