The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Nat на Linux(клиентская машина не видет DNS)"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Nat на Linux(клиентская машина не видет DNS)"
Сообщение от Friker emailИскать по авторуВ закладки(ok) on 19-Сен-04, 15:56  (MSK)
Сервер поднят на LinuxRH
Нат поднимается вот таким скриптом:
#!/bin/sh
INET="192.168.1.0/255.255.255.0"
ANY="0.0.0.0/0"
EXTDEV="ppp0"
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j SNAT --to-source мойIP
echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/iptables -A INPUT -j ACCEPT -p udp -s $ANY --sport 53 -d $ANY
/sbin/iptables -A OUTPUT -j ACCEPT -p udp -s $ANY -d $ANY --dport 53
echo "NAT!"

проблема:
клиентская машина не заходит на сервер (не видет DNS)
В настройках клиента прописан мой сервер как шлюз и DNS и 2-ым стоит DNS провайдэра.
С Сервера я DNS вижу без проблем. Если с клиента заходить на IP в инете всё работает!
Подскажите пожалусто что делать....

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Nat на Linux(клиентская машина не видет DNS)"
Сообщение от Dubrovsky Искать по авторуВ закладки(??) on 19-Сен-04, 20:23  (MSK)
>Сервер поднят на LinuxRH
>Нат поднимается вот таким скриптом:
>#!/bin/sh
>INET="192.168.1.0/255.255.255.0"
>ANY="0.0.0.0/0"
>EXTDEV="ppp0"
>iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j SNAT --to-source мойIP
>echo 1 > /proc/sys/net/ipv4/ip_forward

следущее не имеет никакого значения (все равно все открыто)

>/sbin/iptables -A INPUT -j ACCEPT -p udp -s $ANY --sport 53 -d
>$ANY
>/sbin/iptables -A OUTPUT -j ACCEPT -p udp -s $ANY -d $ANY --dport
>53
>echo "NAT!"

по идее стоит фильтровать весь трафик, но это отдельная история

а вот маскарадинг должен быть типа этого:

iptables -t nat -A POSTROUTING --out-interface $EXTDEV -s 192.168.1.0/24 -j SNAT --to-source мойIP

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Nat на Linux(клиентская машина не видет DNS)"
Сообщение от StSphinx emailИскать по авторуВ закладки(??) on 20-Сен-04, 10:33  (MSK)
>>Сервер поднят на LinuxRH
>>Нат поднимается вот таким скриптом:
>>#!/bin/sh
>>INET="192.168.1.0/255.255.255.0"
>>ANY="0.0.0.0/0"
>>EXTDEV="ppp0"
>>iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j SNAT --to-source мойIP
>>echo 1 > /proc/sys/net/ipv4/ip_forward
>
>следущее не имеет никакого значения (все равно все открыто)

Очень даже имеет. Данный ключ, чтобы Вы знали, разрешает форвард пакетов через машину в принципе. То есть позволяет ей работать как роутер.

>
>>/sbin/iptables -A INPUT -j ACCEPT -p udp -s $ANY --sport 53 -d
>>$ANY
>>/sbin/iptables -A OUTPUT -j ACCEPT -p udp -s $ANY -d $ANY --dport
>>53

Это не имеет смысла. Посколько пакеты идут на DNS провайдера, то нужно разрешить форвардинг, а Вы разрешаете входящие/исходящие пакеты. То есть нужно:

-A FORWARD -p udp -m udp -s $ANY -i $YOUR_LAN_IFACE -d $PROV_DNS_IP --dport 53 -j ACCEPT

И еще, читайте документацию, в ней хорошо описано каким образом пакеты двигаются внутри таблиц NetFilter.

>>echo "NAT!"
>
>по идее стоит фильтровать весь трафик, но это отдельная история
>
>а вот маскарадинг должен быть типа этого:
>
>iptables -t nat -A POSTROUTING --out-interface $EXTDEV -s 192.168.1.0/24 -j SNAT --to-source
>мойIP


  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "Nat на Linux(клиентская машина не видет DNS)"
Сообщение от Dubrovsky Искать по авторуВ закладки(??) on 20-Сен-04, 13:22  (MSK)
>>>Сервер поднят на LinuxRH
>>>Нат поднимается вот таким скриптом:
>>>#!/bin/sh
>>>INET="192.168.1.0/255.255.255.0"
>>>ANY="0.0.0.0/0"
>>>EXTDEV="ppp0"
>>>iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j SNAT --to-source мойIP
>>>echo 1 > /proc/sys/net/ipv4/ip_forward
>>
>>следущее не имеет никакого значения (все равно все открыто)
>
>Очень даже имеет. Данный ключ, чтобы Вы знали, разрешает форвард пакетов через
>машину в принципе. То есть позволяет ей работать как роутер.

я говорил следущее, а не предыдущее

>>
>>>/sbin/iptables -A INPUT -j ACCEPT -p udp -s $ANY --sport 53 -d
>>>$ANY
>>>/sbin/iptables -A OUTPUT -j ACCEPT -p udp -s $ANY -d $ANY --dport
>>>53
>
>Это не имеет смысла. Посколько пакеты идут на DNS провайдера, то нужно
>разрешить форвардинг, а Вы разрешаете входящие/исходящие пакеты. То есть нужно:
>
>-A FORWARD -p udp -m udp -s $ANY -i $YOUR_LAN_IFACE -d $PROV_DNS_IP
>--dport 53 -j ACCEPT
>
>И еще, читайте документацию, в ней хорошо описано каким образом пакеты двигаются
>внутри таблиц NetFilter.
>
>>>echo "NAT!"
>>
>>по идее стоит фильтровать весь трафик, но это отдельная история
>>
>>а вот маскарадинг должен быть типа этого:
>>
>>iptables -t nat -A POSTROUTING --out-interface $EXTDEV -s 192.168.1.0/24 -j SNAT --to-source
>>мойIP


  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Nat на Linux(клиентская машина не видет DNS)"
Сообщение от Дмитрий Ю. Карпов emailИскать по авторуВ закладки on 20-Сен-04, 10:35  (MSK)
Подними DNS-сервер на машине, которая маскарадит (делает NAT). Ну и кажи его всем клиентам первым в списке.
  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру