Задать вопрос
@romaro

Почему не работает проброс порта с хоста на виртуалку?

Linux Oracle поднят на виртуалке, проброшен 3000 порт:
6284ea8212491554311448.jpeg

На сервере запущен процесс, который слушает этот порт:
6284ead8edff8688427357.jpeg

Под этим процессом работает сервер на Node:
import Fastify from "fastify";

const engine = Fastify({
  logger: true
});

engine.get('/', (request, reply) => {
  reply.send({ hello: 'world' })
});

engine.listen({ port: 3000 }, (err, address) => {
  if (err) throw err
});


Стучусь из винды, но получаю сброс соединения:
C:\Users\Roma>curl http://localhost/3000
curl: (56) Recv failure: Connection was reset


Вот правила файрволла:
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         

Chain FORWARD (policy DROP)
num  target     prot opt source               destination         
1    DOCKER-USER  all  --  anywhere             anywhere            
2    DOCKER-ISOLATION-STAGE-1  all  --  anywhere             anywhere            
3    ACCEPT     all  --  anywhere             anywhere             ctstate RELATED,ESTABLISHED
4    DOCKER     all  --  anywhere             anywhere            
5    ACCEPT     all  --  anywhere             anywhere            
6    ACCEPT     all  --  anywhere             anywhere            
7    ACCEPT     all  --  anywhere             anywhere             ctstate RELATED,ESTABLISHED
8    DOCKER     all  --  anywhere             anywhere            
9    ACCEPT     all  --  anywhere             anywhere            
10   ACCEPT     all  --  anywhere             anywhere            

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination         

Chain DOCKER (2 references)
num  target     prot opt source               destination         

Chain DOCKER-ISOLATION-STAGE-1 (1 references)
num  target     prot opt source               destination         
1    DOCKER-ISOLATION-STAGE-2  all  --  anywhere             anywhere            
2    DOCKER-ISOLATION-STAGE-2  all  --  anywhere             anywhere            
3    RETURN     all  --  anywhere             anywhere            

Chain DOCKER-ISOLATION-STAGE-2 (2 references)
num  target     prot opt source               destination         
1    DROP       all  --  anywhere             anywhere            
2    DROP       all  --  anywhere             anywhere            
3    RETURN     all  --  anywhere             anywhere            

Chain DOCKER-USER (1 references)
num  target     prot opt source               destination         
1    RETURN     all  --  anywhere             anywhere


При этом VSCode сама инициализирует проброс и по этому порту все работает:
6284ee1c2484f229459343.jpeg

Помогите разобраться, что с чем конфликтует и почему не работает доступ по localhost:3000
  • Вопрос задан
  • 247 просмотров
Подписаться 1 Средний Комментировать
Решения вопроса 1
@q2digger
никого не трогаю, починяю примус
curl http://localhost/3000
серьезно не видите?
двоеточие между localhost и портом потерялось
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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