» »

NAT reflexion v Mikrotiku?

NAT reflexion v Mikrotiku?

poweroff ::

Imam dve virtualki (V1 in V2) za Mikrotikom, ki je na javnem IP-ju. Na V1 je Nginx proxy, na V2 je končni strežnik (my.server.si)

Če zdaj rečem "curl https://my.server.si", web promet prileti do virtualke V2 in dobim normalen odziv.

Takole:
185.xx.xx.xx:443 -- 10.0.2.3:443 (V1, Nginx proxy) -- 10.0.2.4:11000 (V2, my.server.si)

Torej:
- request gre na zunanji IP (186.xx.xx.xx)
- od tam se posreduje na virtualko 10.0.2.3 (port 443), kjer je Nginx proxy
- ki preusmeri request na drugo virtualko 10.0.2.4 (port 11000)

Do tukaj vse OK.

Problem pa nastopi, če curl "https://my.server.si" rečem na virtualki V2 (končni strežnik my.server.si). V tem primeru se povezava ne vzpostavi.

Kolikor razumem, bi moral narediti NAT reflexion: NAT reflection refers to the ability to access external services from the internal network using the external (usually public) IP address, the same as if the client were on the Internet.

Razmišljal sem tudi, da zadevo rešim tako, da v virtualko V2 v /etc/hosts vpišem 10.0.2.4 my.server.si, ampak problem je da če kličem port 443, bi se moral promet preusmeriti na 11000...

Skratka, kako v Mikrotiku narediti NAT reflexion?
sudo poweroff

NoName ::

Vidim dve rešitvi.. ena je, da imaš na DNS dva viewa (external za rajo na internetu, ki bo my.server.si resolval v 185.x.x.x in internal, ki bo internim mašinam v 10.0.2.0/24 networku my.server.si resolval direkt v 10.0.2.3), s tem promet ne bo nikdar prišel na mikrotika, ampak direkt na nginx proxy.

Lahko pa vključiš naslednji NAT rule
ip firewall nat add action=masquerade chain=srcnat dst-address=10.0.2.3 src-address=10.0.2.0/24
seveda pri pogoju, da imaš
ip firewall nat add action=dst-nat chain=dstnat dst-address=185.x.x.x protocol=tcp dst-port=443 to-address=10.0.2.3
s tem boš na nginx proxyju v logih videl, kot da se želi na my.server.si povezat sam mikrotik (10.0.2.1 ali 10.0.2.254 ali karkoli že imaš nastavljeno), ne pa dejanskega client ipja
I can see dumb people...They're all around us... Look, they're even on this forum!

Daniel ::

A ni to Hairpin NAT?

link_up ::

In and Out

HotBurek ::

... ampak problem je da če kličem port 443, bi se moral promet preusmeriti na 11000...

Ena rešitev za ta problem je lahko prerouting.

Primer za nftables:
table ip nat {
	chain prerouting {
		type nat hook prerouting priority 0;

		# Redirect 443 to 11000
		ip saddr 10.0.2.4 tcp dport 443 dnat to 10.0.2.4:11000;

		# Log traffic
		counter log prefix "nftables.drop >PRE> " drop;

		policy drop;
	}
}
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window

Zgodovina sprememb…

  • spremenilo: HotBurek ()

poweroff ::

Tnx. Sem ugotovil, da bom rabil še en dodaten IP (pač, zahteve serverja), ampak Hairpin NAT mi bo pa rešil kup drugih problemov.
sudo poweroff


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Domači VPN (strani: 1 2 3 )

Oddelek: Omrežja in internet
12724803 (10651) Daniel
»

Vprašanje o povezavi preko Hamachi-ja

Oddelek: Pomoč in nasveti
71273 (694) ScottDJ_
»

Postavitev strežnika in lokalnega omrežja

Oddelek: Omrežja in internet
81769 (1486) NoName
»

pppoe+mikrotik

Oddelek: Omrežja in internet
173527 (3105) Senitel
»

IPTables

Oddelek: Operacijski sistemi
211974 (1603) Brane2

Več podobnih tem