alexbuki
@alexbuki
программист js

Как настроить локальный сервер и роутер dd-wrt так, чтобы можно было делать внешние пост запросы?

Создал на node js сервер при помощи модуля express.
const express = require('express');
const app = express();
const port = 3000;

app.listen(port, ()=>{
    console.log('we are live on port '+port)
});

   app.post('/',(req, res)=>{
            res.send('hello');
    })


Хочу по внешнему порту сделать пост запрос(см. скриншот)
5c067b3538440037263445.jpeg

Я так понимаю для этого нужно на роутере пробросить порты:
5c067b899aa62398814373.jpeg

В итоге никакой реакции на запрос.
Подскажите пожалуйста как правильно настроить сервер для запросов из вне через роутер.
  • Вопрос задан
  • 278 просмотров
Решения вопроса 1
Jump
@Jump
Системный администратор со стажем.
Похоже у вас просто нет белого IP адреса.
А с серым адресом никакие запросы из внешней сети невозможны.

Адрес вашего роутера выданный вам провайдером 10.124.50.28 это видно на скриншоте.
Это серый адрес, он не маршрутизируется в сети интернет, и отправить запрос на него из внешней сети невозможно.
Адрес 46.188.124.37 на который вы отправляете запрос это адрес шлюза вашего провайдера.
Именно туда попадает ваш запрос. А шлюз его просто уничтожает.

Попросите провайдера выдать вам белый IP адрес.
Обычно эта услуга стоит около 50-100рублей в месяц - тогда ваш роутер не будет сидеть не за NAT'ом провайдера, и будет доступен из внешней сети.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
kawabanga
@kawabanga
А почему у вас роутер имеет адрес - 10.124.50.28
А запрос вы делаете на другой адрес?

IP белый?
Ответ написан
@de1m
А вы вот запрос в постмане с того же самого компьютера делаете, где страница крутится?
Так по-моему работать не будет, во всяком случае у меня так на большом файерволле (shorewall) не работало, пока я не сделал SNAT. А если с другого компьютера не работает, то тогда надо всё по очереди проверять.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы