Tekkis vajadus kahele sisevõrgumasinale anda välised ip'd (vaja läheb
ainult porti 80).
Aadressruumiga kõik OK.
Tegin nii:
#SISEVORGUMASIN1
$IPTABLES -t nat -A PREROUTING -d $VALISIP1 -p tcp --dport 80 -m state
--state NEW,ESTABLISHED,RELATED -j DNAT --to $SISEVORGUMASIN1
$IPTABLES -A FORWARD -d $SISEVORGUMASIN1 -p tcp --dport 80 -m state
--state NEW -j ACCEPT
#SISEVORGUMASIN2
$IPTABLES -t nat -A PREROUTING -d $VALISIP2 -p tcp --dport 80 -m state
--state NEW,ESTABLISHED,RELATED -j DNAT --to $SISEVORGUMASIN2
$IPTABLES -A FORWARD -d $SISEVORGUMASIN2 -p tcp --dport 80 -m state
--state NEW -j ACCEPT
Tundub, et ei toimi.
Ehk oleks pidanud serveri välisvõrgukaardile kaks aliast (aadressidega
$VALISIP1 ja $VALISIP2) tegema?
Aivar
pmst LAN-s võiks masinad ikka privaatsete aadressidega olla. Ruuteris
teed sa ülalkirjeldatud pordisuunamised ja ruuteris teed ka IP aliase,
kui sul tõesti 2 avalikku IP aadressi eraldatud on. sisevõrgumasinates
eraldi tulemüürireegleid pole tarvis teha, kui sa just sisevõrgus
teenuseid piirata ei taha.
NB! privaatse IP peale suunamisel pead lisama ruuteris ka source NAT-i
tegeva reegli:
$iptables -t nat -A POSTROUTING -s $SISEVORGUIP2 -j SNAT --to $VALISIP2
üks POSTROUTINGU reegel sul juba ilmselt on seal, aga see teeb vist
SNAT-i su esimese avaliku IP peale. See uus reegel, mille sinna
$VALISIP2 jaoks lisad, olgu reeglite järjekorras eespool sellest vanast
POSTROUTINGU reeglist.
Loodetavasti oli arusaadav.
tanel
ja kui katsetama hakkad, siis väga abiks on tcpdump (Linuxil) või
windump (Windowsil) nimelised programmid, millega on hea liiklust kaardi
peal kuulata, et kas pakid liiguvad ja mis aadressidegas nad liiguvad,
st kas NAT toimib õigesti.