Przekieruj do portu na tym samym komputerze

24

Kiedyś uruchamiałem usługę na porcie 25570 Teraz zmieniam ją, aby działała na porcie 25565, ale nadal chcę, aby ludzie, którzy próbują uzyskać do niej dostęp na starym porcie, mieli dostęp do usługi. Chciałbym więc przekierować port 25570 na 25565 na tym samym komputerze.

Wiem, że jest wiele pytań dotyczących przekazywania na inną maszynę, ale zastanawiałem się, czy metoda jest inna, gdy używasz tej samej maszyny?

Sean Bannister
źródło

Odpowiedzi:

27
iptables -t nat -A PREROUTING -p tcp --dport 25570 -j REDIRECT --to-port 25565

Zakłada się, że nie przekierowujesz ruchu dla całej sieci przez to pole i że jeśli nie, nie oczekuj, że ruch przeznaczony dla innych hostów będzie na tym porcie

RobotHumans
źródło
3
Jak można to cofnąć?
Marco Lavagnino
1
digitalocean.com/community/tutorials/... - zadaj osobne pytanie
RobotHumans
22

Warto zauważyć, że zaakceptowana odpowiedź dotyczy tylko innych hostów sieciowych łączących się z maszyną z systemem iptables. Nie przekierowuje portu dla klientów działających na komputerze iptables próbującym połączyć się z portem 25570 (na przykład).

Te wpisy przekierują port dla połączeń przychodzących z sieci lub z lokalnego hosta obsługującego usługi.

sudo iptables -t nat -I PREROUTING -p tcp --dport 443 -j REDIRECT --to-ports 8443
sudo iptables -t nat -I OUTPUT -p tcp -o lo --dport 443 -j REDIRECT --to-ports 8443
Robert Goley
źródło
1
Dzięki za to! Bez tego dodatku nie byłbym w stanie uzyskać mojej skrzynki Vagrant, aby zażądała strony, którą obsługuje wewnętrznie przy użyciu tego samego portu (do komputera hosta), tj. HOST = localhost: 9000, a teraz GUEST = localhost: 9000 (który trasy do: 80)
Pebbl