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

Исходное сообщение
"Настройки браузенар и рабочей станции при маскарадинге?"

Отправлено teebot , 10-Янв-03 10:38 
сабж.

Прописал правила для макарадинга, ну как водится с первого раза не заработало. Делал как советовали тут на форуме.
Вроде грешить не на что, кроме настроек MS Internet Explorer (Win98), да и наверное самой Win98.
Навсякий случай дам листанги правил ну всякую дополнительную информацию.

Это выводит iptables -t filter -L

Chain INPUT (policy ACCEPT)
target     prot opt source               destination        

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination        

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination        
"nj dsdjlbn
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination        

Это выводит iptables -t nat -L

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination        
MASQUERADE  all  --  xxx.xx.xx.0/24       anywhere          

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination        

Вот сам скрипт:
IPTABLES=/sbin/iptables

/sbin/modprobe ip_conntrack
/sbin/modprobe ipt_MASQUERADE
/sbin/modprobe iptable_nat

$IPTABLES -t nat -A POSTROUTING -s ххх.хх.хх.0/24 -o ppp+ -j MASQUERADE
echo "1" > /proc/sys/net/ipv4/ip_forward

В Win98 указан ДНС, и шлюз.


Содержание

Сообщения в этом обсуждении
"RE: Настройки браузенар и рабочей станции при маскарадинге?"
Отправлено shaman , 10-Янв-03 13:19 
>сабж.
>
>Прописал правила для макарадинга, ну как водится с первого раза не заработало.
>Делал как советовали тут на форуме.
>Вроде грешить не на что, кроме настроек MS Internet Explorer (Win98), да
>и наверное самой Win98.
>Навсякий случай дам листанги правил ну всякую дополнительную информацию.
>
>Это выводит iptables -t filter -L
>
>Chain INPUT (policy ACCEPT)
>target     prot opt source    
>          destination
>
>
>Chain FORWARD (policy ACCEPT)
>target     prot opt source    
>          destination
>
>
>Chain OUTPUT (policy ACCEPT)
>target     prot opt source    
>          destination
>
>"nj dsdjlbn
>Chain PREROUTING (policy ACCEPT)
>target     prot opt source    
>          destination
>
>
>Это выводит iptables -t nat -L
>
>Chain POSTROUTING (policy ACCEPT)
>target     prot opt source    
>          destination
>
>MASQUERADE  all  --  xxx.xx.xx.0/24      
> anywhere
>
>Chain OUTPUT (policy ACCEPT)
>target     prot opt source    
>          destination
>
>
>Вот сам скрипт:
>IPTABLES=/sbin/iptables
>
>/sbin/modprobe ip_conntrack
>/sbin/modprobe ipt_MASQUERADE
>/sbin/modprobe iptable_nat
>
>$IPTABLES -t nat -A POSTROUTING -s ххх.хх.хх.0/24 -o ppp+ -j MASQUERADE
>echo "1" > /proc/sys/net/ipv4/ip_forward
>
>В Win98 указан ДНС, и шлюз.
Вот мои рабочие цепочки маскарада:
$IPTABLES -A FORWARD -i eth0 -m state --state NEW,INVALID -j REJECT
$IPTABLES -t nat -A POSTROUTING -o eth0 -j MASQUERADE

На клиенте ничего дополнительного настраивать не надо.
В качестве теста - пинг на внешний адрес.


"RE: Настройки браузенар и рабочей станции при маскарадинге?"
Отправлено teebot , 10-Янв-03 16:43 
>На клиенте ничего дополнительного настраивать не надо.
>В качестве теста - пинг на внешний адрес.

Тоесть правила у меня написаны корректно?
Теоретически должно работать?
Да?



"RE: Настройки браузенар и рабочей станции при маскарадинге?"
Отправлено teebot , 10-Янв-03 16:53 
>На клиенте ничего дополнительного настраивать не надо.
>В качестве теста - пинг на внешний адрес.

Внешний мир не пингуется.
Беда!!!



"RE: Настройки браузенар и рабочей станции при маскарадинге?"
Отправлено shaman , 10-Янв-03 17:14 
>>На клиенте ничего дополнительного настраивать не надо.
>>В качестве теста - пинг на внешний адрес.
>
>Внешний мир не пингуется.
>Беда!!!
Попробуй добавить  $IPTABLES -P FORWARD ACCEPT


"RE: Настройки браузенар и рабочей станции при маскарадинге?"
Отправлено teebot , 10-Янв-03 17:28 
>>>На клиенте ничего дополнительного настраивать не надо.
>>>В качестве теста - пинг на внешний адрес.
>>
>>Внешний мир не пингуется.
>>Беда!!!
>Попробуй добавить  $IPTABLES -P FORWARD ACCEPT

И даже так не работает, да у меня и так все полиси по умолчанию были ACCEPT.


"RE: Настройки браузенар и рабочей станции при маскарадинге?"
Отправлено Angel Keeper , 10-Янв-03 17:39 
>>>>На клиенте ничего дополнительного настраивать не надо.
>>>>В качестве теста - пинг на внешний адрес.
>>>
>>>Внешний мир не пингуется.
>>>Беда!!!
>>Попробуй добавить  $IPTABLES -P FORWARD ACCEPT
>
>И даже так не работает, да у меня и так все полиси
>по умолчанию были ACCEPT.

/usr/sbin/iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.255.0 -d 0/0 -j MASQUERADE

И никаких дополнительных правил или настроек, кроме прописывания resolv.conf не нужно. Ты ведь догадался nameserver прописать?


"RE: Настройки браузенар и рабочей станции при маскарадинге?"
Отправлено teebot , 10-Янв-03 18:35 
>>>>>На клиенте ничего дополнительного настраивать не надо.
>>>>>В качестве теста - пинг на внешний адрес.
>>>>
>>>>Внешний мир не пингуется.
>>>>Беда!!!
>>>Попробуй добавить  $IPTABLES -P FORWARD ACCEPT
>>
>>И даже так не работает, да у меня и так все полиси
>>по умолчанию были ACCEPT.
>
>/usr/sbin/iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.255.0 -d 0/0 -j MASQUERADE
>
>И никаких дополнительных правил или настроек, кроме прописывания resolv.conf не нужно. Ты
>ведь догадался nameserver прописать?

У меня поднят ДНС, все пашет как часики.
При запросе какого-либо URL рабочая станция получает IP от моего ДНС и на этом затыкается.

Да и пингую я по имени, ане по IP и все резолвится.


"RE: Настройки браузенар и рабочей станции при маскарадинге?"
Отправлено Edik Ponomarenko , 11-Янв-03 01:59 
По моему тут причина не в фаирволе, правила написаны правильно, просто машина совсем не форвардит. Попробуй сделать так

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

Это что - бы не перегружать тачку, включает forward в ядре.

А для дальнейшего, посмотри /etc/sysctl.conf на наличие ...forward = 1


"RE: Настройки браузенар и рабочей станции при маскарадинге?"
Отправлено teebot , 11-Янв-03 10:13 
>По моему тут причина не в фаирволе, правила написаны правильно, просто машина
>совсем не форвардит. Попробуй сделать так
>
>echo 1 >/proc/sys/net/ipv4/ip_forward
>
>Это что - бы не перегружать тачку, включает forward в ядре.
>
>А для дальнейшего, посмотри /etc/sysctl.conf на наличие ...forward = 1

Извини Друг, но прочитай внимательно топ, там
echo 1 >/proc/sys/net/ipv4/ip_forward прописано.

Мне тоже кажется что правила я создал нормально, помог просмотр старых топиков на этом форуме, но все эти мучения порадили во мне всякие ГЛУПЫЕ мысли. Когда у меня стоит простой прокси, я знаю что надо в браузере прописать его, когда у меня прозрачный прокси писать ничего не надо. НО у меня ни то ни другое. Вот я и призадумался, как настроить браузер при маскарадинге.


"RE: Настройки браузенар и рабочей станции при маскарадинге?"
Отправлено teebot , 11-Янв-03 10:14 
>По моему тут причина не в фаирволе, правила написаны правильно, просто машина
>совсем не форвардит. Попробуй сделать так
>
>echo 1 >/proc/sys/net/ipv4/ip_forward
>
>Это что - бы не перегружать тачку, включает forward в ядре.
>
>А для дальнейшего, посмотри /etc/sysctl.conf на наличие ...forward = 1

Может еще какой-нибудь модуль подгрузить?


"RE: Настройки браузенар и рабочей станции при маскарадинге?"
Отправлено Sasha Bury , 11-Янв-03 12:23 
>>По моему тут причина не в фаирволе, правила написаны правильно, просто машина
>>совсем не форвардит. Попробуй сделать так
>>
>>echo 1 >/proc/sys/net/ipv4/ip_forward
>>
>>Это что - бы не перегружать тачку, включает forward в ядре.
>>
>>А для дальнейшего, посмотри /etc/sysctl.conf на наличие ...forward = 1
>
>Может еще какой-нибудь модуль подгрузить?

Посмотри, присутствуют ли пакеты на входном и выходном интерфейсах.
Я в правилах не вижу RELATED...


"RE: Настройки браузенар и рабочей станции при маскарадинге?"
Отправлено trin , 11-Янв-03 13:41 
>Посмотри, присутствуют ли пакеты на входном и выходном интерфейсах.
>Я в правилах не вижу RELATED...
у него все policy=accept, зачем ему related? а выход один - запускать на каждом интерфейсе, и смотреть, что проходит. не помогает - пересобрать ядро повнимательнее к разделу netfilter config...

А вообще, imho, лучше всего взять конфиг из примера в howto и адаптировать под себя. Или если уже так охота написать самому, то поставить последним правилом во всех цепях -j LOG - чтобы хоть видеть, что проходит...


"RE: Настройки браузенар и рабочей станции при маскарадинге?"
Отправлено Edik Ponomarenko , 11-Янв-03 14:11 
Я так понимаю, что  утебя дозвон на провайдера по ppp а за интерфейсом eth0 стоит локалка. Так ?

Тогда цепочка будет такая

iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.255.0 -o ppp0 -j MASQUERADE

192.168.0.0/24 Это адреса за сетевой карточкой. Если у тебя не идет трейс или пинг с самого линуха, поставь в ppp параметр noipdefault. Больше ничего ненужно, ато я вижу для такой простой задачи насоветовали кучу ненужностей.

На рабочих станциях ставь адреса начиная с 192.168.0.2, при условии что на линуксовой сетевухе 192.168.0.1 (но это так для примера). Шлюз по умолчанию будет 192.168.0.1. А вот днс на винде поставь сначала провайдера твоего и попробуй походить в инет. Должно все работать.

Ну правда есть еще одна тонкость с маскарадом ftp сессий. Но это решается так

echo "/sbin/modprobe ip_conntrack_ftp" > /etc/rc.d/rc.local.local
echo "/sbin/modprobe ip_nat_ftp" >> /etc/rc.d/rc.local.local

Вот собственно и все.

А вот /etc/sysctl.conf на наличие net.ipv4.ip_forward = 1
все - таки проверь.



"RE: Настройки браузенар и рабочей станции при маскарадинге?"
Отправлено teebot , 12-Янв-03 12:54 
>Я так понимаю, что  утебя дозвон на провайдера по ppp а
>за интерфейсом eth0 стоит локалка. Так ?

Ты прав, все именно так.

>Тогда цепочка будет такая
>
>iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.255.0 -o ppp0 -j MASQUERADE
>
>192.168.0.0/24 Это адреса за сетевой карточкой. Если у тебя не идет трейс
>или пинг с самого линуха, поставь в ppp параметр noipdefault. Больше
>ничего ненужно, ато я вижу для такой простой задачи насоветовали кучу
>ненужностей.

С самого лИнуха все идет прекрасно (и ping и трейс). Скажу больше даже ИНЕТ работает. Я поставил squid так что ИНЕТ раздается. Все это затеялось только из-за ftp маскарадинга. Но прежде чем приступить к ftp я решил просто попробовать маскарадинг, и вот какой облом.

Я даже не знаю какие диагностические приемы применить.
Попробую трейсить с рабочей станции, посмотрим на чем заканчивается (думаю сюрприза не будет - это шлюз).
Может применить логирование пакетов?

Такой вопрос, если бы ядро было собрано без поддрежки маскарадинга или  некорректно, неужели бы правило добавилось?
Кто-то может что-то сказать насчет ядра из дистрибутива Linux RH 7.3 Valhalla kernel 2.4.18. Кто-то мутил под него маскарадинг?

>Ну правда есть еще одна тонкость с маскарадом ftp сессий. Но это
>решается так
>
>echo "/sbin/modprobe ip_conntrack_ftp" > /etc/rc.d/rc.local.local
>echo "/sbin/modprobe ip_nat_ftp" >> /etc/rc.d/rc.local.local
>
>Вот собственно и все.

Это попробую только когда заработает просто маскарадинг.

>А вот /etc/sysctl.conf на наличие net.ipv4.ip_forward = 1
>все - таки проверь.

Обязательно проверю.



"RE: Настройки браузенар и рабочей станции при маскарадинге?"
Отправлено teebot , 13-Янв-03 17:08 
Активные маршруты:

Cетевой адрес       Маска         Адрес шлюза      Интерфейс  Метрика
127.0.0.0       255.0.0.0        127.0.0.1        127.0.0.1       1
IP_сети         255.255.255.0    мой_IP           мой_IP          1
мой_IP          255.255.255.255  127.0.0.1        127.0.0.1       1
моя_сеть        255.255.255.255  мой_IP           мой_IP          1
224.0.0.0       224.0.0.0        мой_IP           мой_IP          1
255.255.255.255 255.255.255.255  мой_IP           0.0.0.0         1

Вот такблица маршрутизации на рабочей станции.
Мо-моему совсем не нормальная таблица.

Или я не прав?

Насколькоя могу судить нет адреса шлюза.


"RE: Настройки браузенар и рабочей станции при маскарадинге?"
Отправлено teebot , 14-Янв-03 17:00 
Кому интересно и для тех у кого такие же грабли будут даю решение проблемы.
Дело было вовсе не в правила маскарадинга, и именно в таблице маршрутов рабочей станции. Просто был не совсем правильно настроен DHCP там отсутствовала опция option routers IP_шлюза. В связи с этим все рабочие станци получали неправельный маршрут.

Желаю удачи.