Сервер Suse 10.3. Пользователи ходят в инет через SQUID, нужно сделать NAT только для 1-го ip. На сервере есть:
eth1- инет; dsl1 - pppoe соединение; eth3 - локальная сеть( 192.168.0.1/24 ) с шлюзом 192.168.0.1
Использовал правила:
iptables -t nat -A POSTROUTING -s 192.168.0.4 -o dsl1 -j MASQUERADE
и
iptables -A FORWARD -s 168.192.0.4 -p ALL -i eth3 -j ACCEPT
На реальный ip пинг из локалки есть, а дальше не идет. подскажите что не так?
# cat /proc/sys/net/ipv4/ip_forward
1
# iptables -t nat -L
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
REDIRECT tcp -- 192.168.0.0/24 anywhere tcp dpt:80 redir ports 3128
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE all -- 192.168.0.4 anywhere
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
ME60-1-LO0.MV.r * 255.255.255.255 UH 0 0 0 dsl1
192.168.1.0 * 255.255.255.0 U 0 0 0 eth1
192.168.0.0 * 255.255.255.0 U 0 0 0 eth3
link-local * 255.255.0.0 U 0 0 0 eth1
loopback * 255.0.0.0 U 0 0 0 lo
default * 0.0.0.0 U 0 0 0 dsl1
# iptables -t nat -L
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
REDIRECT tcp -- 192.168.0.0/24 anywhere tcp dpt:80 redir ports 3128
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE all -- 192.168.0.4 anywhere
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
# iptables -L FORWARD
Chain FORWARD (policy DROP)
target prot opt source destination
TCPMSS tcp -- anywhere anywhere tcp flags:SYN,RST/SYN TCPMSS clamp to PMTU
forward_int all -- anywhere anywhere
forward_ext all -- anywhere anywhere
forward_ext all -- anywhere anywhere
LOG all -- anywhere anywhere limit: avg 3/min burst 5 LOG level warning tcp-options ip-options prefix `SFW2-FWD-ILL-ROUTING '
DROP all -- anywhere anywhere
ACCEPT all -- 168.192.0.4 anywhere
>[оверквотинг удален]
>LOG all --
>anywhere
> anywhere
> limit: avg 3/min burst 5 LOG level warning
>tcp-options ip-options prefix `SFW2-FWD-ILL-ROUTING '
>DROP all -- anywhere
>
> anywhere
>ACCEPT all -- 168.192.0.4
> anywhereнужно всех через squid, а на один ip нат?
или для всех нат нужен с заворотом на squid?
>
>нужно всех через squid, а на один ip нат?именно так. нат должен быть только у одного пользователя. в веб все благополучно ходят через squid.
>> anywhere
>>ACCEPT all -- 168.192.0.4
>> anywhereпоправил, но погоды это не сделало.
>Сервер Suse 10.3. Пользователи ходят в инет через SQUID, нужно сделать NAT
>только для 1-го ip. На сервере есть:
>eth1- инет; dsl1 - pppoe соединение; eth3 - локальная сеть( 192.168.0.1/24 )
>с шлюзом 192.168.0.1ip статика или динамика?
>Использовал правила:
>iptables -t nat -A POSTROUTING -s 192.168.0.4 -o dsl1 -j MASQUERADE
>и
>iptables -A FORWARD -s 168.192.0.4 -p ALL -i eth3 -j ACCEPTа где правило для обратных пакетов? Что то типа
# iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
tcpdump вам в руки
> REDIRECT tcp -- 192.168.0.0/24 anywhere tcp dpt:80 redir ports 3128Вот из этой строки, точнее сети, исключите адрес 192.168.0.4, а то он у вас тоже на редирект идет.
всем спасибо. настроил susefirewall2, всё отлично работает.