Script je super, akurat, ze je len tazko aplikovatelny na dial-up pripojenie. Pri nom totiz svoju IP adresu dopredu neviem. Viem len, ze to bude cosi tvaru napr. 195.80.179.0/24. Lenze prikaz
iptables -t nat -A POSTROUTING -o ppp0 -j SNAT --to 195.80.179.0/24
vyhodi chybu
iptables v1.2.1: Bad IP address `195.80.179.0/24'
Viem pouzit MASQUERADE stylom
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE
alebo parsovat /sbin/ifconfig po pripojeni a zavolani iptables so spravnymi parametrami pre SNAT, ale ani jedno z tychto rieseni sa mi moc nepaci. Da sa s tym neico robit?
Parametr --to u SNAT ma jiny vyznam. Je zde mozne napsat rozsah ip, ale ne ip/maska, ale pres pomlcku ip-ip. Pri provadeni SNATu bude kernel pouzivat vsechna ip z tohoto rozsahu. Pokud to je mozne, necha jedne stanici stejne NAT ip, napr.:
NATujeme 192.168.1.0/24 na 1.1.1.1-1.1.1.10
pri prvnim spojeni ze stanice s ip 192.168.1.18 bude vybrano jedno z SNAT ip, treba 1.1.1.5 (kruhovym algoritmem)
pri druhem a dalsim spojeni z 192.168.1.18 se bude kernel snazit zachovat SNAT ip 1.1.1.5
Takze ve vasem pripade SNAT nepripada v uvahu, kernel by pouzil vsechna zadana IP, nikoliv to, ktere byste dostal od ISP. Rozsah je ale potreba zadat jako 195.80.179.1-195.80.179.254 (0 je sit, 255 broadcast).
Hm vdaka za radu, ale
iptables -t nat -A POSTROUTING -o ppp0 -j SNAT --to 195.80.179.1-195.80.179.254
nefungoval. Neviem preco, vyzeralo to akoby sa nevedelo, ktoru IP adresu z toho rozsahu pouzit. Po zadani prikazu s presnou IP adresou uz vsetko fungovalo bez problemov:
iptables -t nat -A POSTROUTING -o ppp0 -j SNAT --to 195.80.179.184
iptables -t nat -A POSTROUTING -o ppp0 -j SNAT --to 195.80.179.1-195.80.179.254
Tohle se pouziva tehdy, kdyz mate k dispozici rozsah statickych adres a chete, aby router maskaradoval pres vicero adres a ne jen pres jednu (napriklad kvuli load-balacingu, apod.)
Spravne reseni, je jak jiz radil kolega pouziti -j MASQUERADE.
Pokud mate dunmickou adresu, tak se ujistete, ze mate nastavenou promennou /proc/sys/net/ipv4/ip_dynaddr na 1