URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID12
Нить номер: 4855
[ Назад ]

Исходное сообщение
"Прозрачный прокси + трансляция адресов"

Отправлено bobeer , 20-Апр-07 08:29 
И так

Исходные данные
eth0 - 192.168.5.69 - внешний интерфейс
eth1 - 192.168.5.254 - внутренный интерфейс
Машина используется для тестироваия, в последствии eth0 будет 194.186.*.*, eth1 192.168.5.1
Система Fedora5

Задача
1) Настроить маршрутизацию с локалки прицепленной на eth1 в большой мир
2) Апосля решения пункта 1 прикрутить туда прозрачный squid

Доп.сведения.
Маны, хэлпы, доки и форум читал - не помогает. Please help me.


Содержание

Сообщения в этом обсуждении
"Прозрачный прокси + трансляция адресов"
Отправлено pavel_simple , 20-Апр-07 09:15 
плохо читал
ОС какая, версия...



"Прозрачный прокси + трансляция адресов"
Отправлено pavel_simple , 20-Апр-07 09:16 
>плохо читал
>ОС какая, версия...

ах -- ну да....
man iptables смотрим SNAT
www.squid.org


"Прозрачный прокси + трансляция адресов"
Отправлено bobeer , 20-Апр-07 09:41 
>>плохо читал
>>ОС какая, версия...
>
>ах -- ну да....
>man iptables смотрим SNAT
>www.squid.org

Угу спасибо. Был я там.
Считайте что я тупой нуб.
Я что-то недопонимаю пытался и SNAT и MASQUERADE правила писать, но видать не правильно. Если бы копание инета помогло сюда бы не писал. Видать у меня слишком плохая базовая подготовка, не хвататет знании. Плиз напишите конкретно


"Прозрачный прокси + трансляция адресов"
Отправлено pavel_simple , 20-Апр-07 10:04 
да есть всё в форуме -- ищите, да обрящите.



"Прозрачный прокси + трансляция адресов"
Отправлено bobeer , 20-Апр-07 10:21 
>да есть всё в форуме -- ищите, да обрящите.

Обожаю модераторов и им подобных за подобные ответы ;)
Я уже не первый день ищу, нашел много интересного, но не работает даже 1й пункт :(


"Прозрачный прокси + трансляция адресов"
Отправлено reader , 20-Апр-07 10:46 
куда уж проще?

echo 1 > /proc/sys/net/ipv4/ip_forward

-A POSTROUTING -s 192.168.5.0/255.255.255.0 -d ! 192.168.5.0/255.255.255.0 -p tcp -j SNAT --to-source 194.186.*.*

плюс правила фильтрации

если искал, то хоть бы показал свои свои наработки, что бы было понятно как искал


"Прозрачный прокси + трансляция адресов"
Отправлено bobeer , 20-Апр-07 11:11 
>куда уж проще?
>
>echo 1 > /proc/sys/net/ipv4/ip_forward
>
>-A POSTROUTING -s 192.168.5.0/255.255.255.0 -d ! 192.168.5.0/255.255.255.0 -p tcp -j SNAT --to-source
>194.186.*.*
>
>плюс правила фильтрации
>
>если искал, то хоть бы показал свои свои наработки, что бы было
>понятно как искал

Спасибо.
пробовал
route add -host 192.168.5.1 eth0
route add default gw 192.168.5.1
iptables -A FORWARD -s 192.168.5.0/24 -j MASQUERADE

Правила фильтрации - имеешь ввиду в сквиде или в iptables?


"Прозрачный прокси + трансляция адресов"
Отправлено reader , 20-Апр-07 12:15 
>Спасибо.
>пробовал
>route add -host 192.168.5.1 eth0
>route add default gw 192.168.5.1
>iptables -A FORWARD -s 192.168.5.0/24 -j MASQUERADE
>
вдумчиво читать Iptables Tutorial

>Правила фильтрации - имеешь ввиду в сквиде или в iptables?

в первую очередь iptables


"Прозрачный прокси + трансляция адресов"
Отправлено bobeer , 20-Апр-07 12:10 
>куда уж проще?
>
>echo 1 > /proc/sys/net/ipv4/ip_forward
>
>-A POSTROUTING -s 192.168.5.0/255.255.255.0 -d ! 192.168.5.0/255.255.255.0 -p tcp -j SNAT --to-source
>194.186.*.*
>
>плюс правила фильтрации
>
>если искал, то хоть бы показал свои свои наработки, что бы было
>понятно как искал

Попробывал.

-A POSTROUTING -s 192.168.5.60 -d ! 192.168.5.60 -p tcp -j SNAT --to-source 192.168.5.1

где 192.168.5.60 тестовый комп цепленный через меня, с него идут пакеты в инет (пытаются идти)
192.168.5.1 - прокся в сетке через которую мой комп (eth0 192.168.5.69 - внешний ип, eth1 192.168.5.254 - внутренный ип) лазит в инет

192.168.5.60 Ответа нет не от инета, не от моего "внутреннего" ипа. Хотя до меня пакеты ходят, но от меня не идут.

tcpdump -i eth1

****
15:07:40.325933 arp who-has proxy.domain.ru tell comp2.domain.ru
15:07:40.325947 IP comp2.domain.ru > 192.168.5.254: ICMP echo request, id 512, seq 9596, length 40
15:07:43.764827 IP comp2.tdomain.ru.netbios-ns > 192.168.5.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST

****
12 packets captured
24 packets received by filter
0 packets dropped by kernel


"Прозрачный прокси + трансляция адресов"
Отправлено reader , 20-Апр-07 12:37 
>Попробывал.
>
>-A POSTROUTING -s 192.168.5.60 -d ! 192.168.5.60 -p tcp -j SNAT --to-source
>192.168.5.1
>

-A POSTROUTING -s 192.168.5.60 -d ! 192.168.5.60 -p tcp -j SNAT --to-source
IP_внешнего интерфейса (192.168.5.69)  


>где 192.168.5.60 тестовый комп цепленный через меня, с него идут пакеты в
>инет (пытаются идти)
>192.168.5.1 - прокся в сетке через которую мой комп (eth0 192.168.5.69 -
>внешний ип, eth1 192.168.5.254 - внутренней ип) лазит в инет
>
>192.168.5.60 Ответа нет не от инета, не от моего "внутреннего" ипа. Хотя
>до меня пакеты ходят, но от меня не идут.
>
>tcpdump -i eth1
>
>****
>15:07:40.325933 arp who-has proxy.domain.ru tell comp2.domain.ru
>15:07:40.325947 IP comp2.domain.ru > 192.168.5.254: ICMP echo request, id 512, seq 9596, length 40
>15:07:43.764827 IP comp2.tdomain.ru.netbios-ns > 192.168.5.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
>
>****
>12 packets captured
>24 packets received by filter
>0 packets dropped by kernel



"Прозрачный прокси + трансляция адресов"
Отправлено bobeer , 20-Апр-07 13:12 
>>-A POSTROUTING -s 192.168.5.60 -d ! 192.168.5.60 -p tcp -j SNAT --to-source
>>192.168.5.1
>>
>
>-A POSTROUTING -s 192.168.5.60 -d ! 192.168.5.60 -p tcp -j SNAT --to-source
>
>IP_внешнего интерфейса (192.168.5.69)
>
нифига не фурыкает. Какие еще будут версии?
после вкл proc/sys/net/ip_forwrad еще что-нибудь надо?


"Прозрачный прокси + трансляция адресов"
Отправлено reader , 20-Апр-07 13:57 
>>>-A POSTROUTING -s 192.168.5.60 -d ! 192.168.5.60 -p tcp -j SNAT --to-source
>>>192.168.5.1
>>>
>>
>>-A POSTROUTING -s 192.168.5.60 -d ! 192.168.5.60 -p tcp -j SNAT --to-source
>>
>>IP_внешнего интерфейса (192.168.5.69)
>>
>нифига не фурыкает. Какие еще будут версии?
>после вкл proc/sys/net/ip_forwrad еще что-нибудь надо?


конечно,
правила фильтрации в iptables.
DNS.


"Прозрачный прокси + трансляция адресов"
Отправлено vserov , 20-Апр-07 14:19 
дай выводы команд:
route
ifconfig

"Прозрачный прокси + трансляция адресов"
Отправлено bobeer , 20-Апр-07 14:27 
>дай выводы команд:
>route
>ifconfig


Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.5.0     *               255.255.255.0   U     0      0        0 eth0
192.168.5.0     *               255.255.255.0   U     0      0        0 eth1
169.254.0.0     *               255.255.0.0     U     0      0        0 eth1
default         proxy.domain    0.0.0.0         UG    0      0        0 eth0

eth0      Link encap:Ethernet
          inet addr:192.168.5.69  Bcast:192.168.5.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:852 errors:0 dropped:0 overruns:0 frame:0
          TX packets:456 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:172836 (168.7 KiB)  TX bytes:54685 (53.4 KiB)
          Interrupt:19

eth1      Link encap:Ethernet
          inet addr:192.168.5.254  Bcast:192.168.5.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1435977 errors:0 dropped:0 overruns:0 frame:0
          TX packets:181 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1294177912 (1.2 GiB)  TX bytes:15984 (15.6 KiB)
          Interrupt:20 Base address:0xec00

route после service network restart обнуляется и ip_forward ставиться 0. Короче объясните нубу по шагам где я тупой (((


"Прозрачный прокси + трансляция адресов"
Отправлено pavel_simple , 20-Апр-07 14:42 
так всё таки нуб....
ну  тогда пробуй...
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -X
iptables -t nat -X
iptables -t mangle -X
iptables -F
iptables -t nat -F
iptables -t mangle -F

iptables -t nat POSTROUTING -s 192.168.5.0/24 -d ! 192.168.5.254 -j SNAT --to-source 192.168.5.69
echo 1 > /proc/sys/net/ipv4/ip_forward

на клиенте,, windows????
route add 0.0.0.0 192.168.5.254


"Прозрачный прокси + трансляция адресов"
Отправлено bobeer , 20-Апр-07 15:04 
>
>на клиенте,, windows????
>route add 0.0.0.0 192.168.5.254

Угу нуб )
Windows


"Прозрачный прокси + трансляция адресов"
Отправлено vserov , 20-Апр-07 14:51 
в файле /etc/sysctl.conf пропиши net.ipv6.ip.forward=1 (эта строка там скорее всего есть, просто поменяй значение)
если ip второго компа 192.168.5.60:
route add -host 192.168.5.60 dev eth1
iptables -t nat -A POSTROUTING -s 192.168.5.60 -d ! 192.168.5.254 -o eth0 -j SNAT --to-source 192.168.5.69

должно работать, но вообще одна и та же подсеть на двух интерфейсах - это не есть правильно...


"Прозрачный прокси + трансляция адресов"
Отправлено vserov , 20-Апр-07 14:56 
>в файле /etc/sysctl.conf пропиши net.ipv6.ip.forward=1 (эта строка там скорее всего

сорри ошибся net.ipv4.ip.forward = 1

"Прозрачный прокси + трансляция адресов"
Отправлено bobeer , 25-Апр-07 14:20 
Подправим
Исходные данные
eth0 - 192.168.5.45 - внешний интерфейс
eth1 - 192.168.4.1 - внутренный интерфейс
192.168.4.0/24 - внутренняя сетка

вообщем надо роутер.
Пробовал
iptables -t nat -A POSTROUTING -s 192.168.4.0/24 -d ! 192.168.4.0/24 -o eth1 -j MASQUERADE

/proc/sys/ipv4/ip_forward = 1


Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.5.0     *               255.255.255.0   U     0      0        0 eth0
192.168.4.0     *               255.255.255.0   U     0      0        0 eth1
169.254.0.0     *               255.255.0.0     U     0      0        0 eth1
default         proxy.firma     0.0.0.0         UG    0      0        0 eth0

ip route list
192.168.5.0/24 dev eth0  proto kernel  scope link  src 192.168.5.45
192.168.4.0/24 dev eth1  proto kernel  scope link  src 192.168.4.1
169.254.0.0/16 dev eth1  scope link
default via 192.168.5.1 dev eth0

короче вутренний интерфей пингуется внешний уже нет
Помогите нубу, я хз почему оно не работает :'-(


"Прозрачный прокси + трансляция адресов"
Отправлено reader , 25-Апр-07 15:45 
iptables -t nat -A POSTROUTING -s 192.168.4.0/24 -d ! 192.168.4.0/24 -o eth0 -j MASQUERADE

помоему интерфейс должен быть внешний


"Прозрачный прокси + трансляция адресов"
Отправлено bobeer , 25-Апр-07 16:18 
>iptables -t nat -A POSTROUTING -s 192.168.4.0/24 -d ! 192.168.4.0/24 -o eth0
>-j MASQUERADE
>
>помоему интерфейс должен быть внешний

пробовал и так тоже, не помогло


"Прозрачный прокси + трансляция адресов"
Отправлено Kliver , 25-Апр-07 20:32 
>>iptables -t nat -A POSTROUTING -s 192.168.4.0/24 -d ! 192.168.4.0/24 -o eth0
>>-j MASQUERADE
>>
>>помоему интерфейс должен быть внешний
>
>пробовал и так тоже, не помогло

Интерфейс внешний конечно. А адрес шлюза на клиентской машине настроен?



"Прозрачный прокси + трансляция адресов"
Отправлено bobeer , 26-Апр-07 08:46 
>>>iptables -t nat -A POSTROUTING -s 192.168.4.0/24 -d ! 192.168.4.0/24 -o eth0
>>>-j MASQUERADE
>>>
>>>помоему интерфейс должен быть внешний
>>
>>пробовал и так тоже, не помогло
>
>Интерфейс внешний конечно. А адрес шлюза на клиентской машине настроен?

Которого шлюза?
Пробовал все


"Прозрачный прокси + трансляция адресов"
Отправлено setty , 04-Май-07 16:12 
>И так
>
>Исходные данные
>eth0 - 192.168.5.69 - внешний интерфейс
>eth1 - 192.168.5.254 - внутренный интерфейс
>Машина используется для тестироваия, в последствии eth0 будет 194.186.*.*, eth1 192.168.5.1
>Система Fedora5
>
>Задача
>1) Настроить маршрутизацию с локалки прицепленной на eth1 в большой мир
>2) Апосля решения пункта 1 прикрутить туда прозрачный squid
>
>Доп.сведения.
>Маны, хэлпы, доки и форум читал - не помогает. Please help me.
>


А почему у тебя оба интерфейса в одной подсетке, сделай внешний хотябы из класса C 10.X.X.X/255.0.0.0 подгрузи нужные модули ядра, если нужно, а потом:
   route add
   iptables -t nat -A POSTROUTING -o eth0 -s 192.168.5.0/24 -j SNAT --to-source 10.1.1.23
   iptables -t nat -L POSTROUTING
  
Пример для будущей сети
   iptables -t nat -A POSTROUTING -o eth0 -s 192.168.5.0/24 -j SNAT --to-source 194.186.X.X

Tutorial:
http://www.compnetdocs.com/iptables/iptables-tutorial.html