Перестал работать маскарадинг [solved] (Трансляция на второй комп.)

Sabayon, Calculate, Funtoo, Exherbo

Модератор: /dev/random

Аватара пользователя
Xaktyc
Сообщения: 604
ОС: Gentoo 2008.0, WinXP

Перестал работать маскарадинг [solved]

Сообщение Xaktyc »

САБЖ В КОНЦЕ!

Смотрел доки, пытался сделать через iptables правила, но все равнона втором компе нет инета.
Мой комп подключен к инету через eth1 по ppp0 (pppoe), второй комп висит на сетке eth0, на нем WinXP, требуется подключить его через настройки шлюза.

Код: Выделить всё

pc xak # ifconfig
eth0      Link encap:Ethernet  HWaddr 00:00:21:ff:a0:3c
          inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:23 Base address:0xcc00

eth1      Link encap:Ethernet  HWaddr 00:18:f3:9a:8c:8b
          inet addr:10.114.6.14  Bcast:10.114.6.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:939 errors:0 dropped:0 overruns:0 frame:0
          TX packets:906 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:459084 (448.3 KiB)  TX bytes:125550 (122.6 KiB)
          Interrupt:123 Base address:0xc000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

ppp0      Link encap:Point-to-Point Protocol
          inet addr:[мой ип]  P-t-P:62.192.224.113  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1
          RX packets:843 errors:0 dropped:0 overruns:0 frame:0
          TX packets:856 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:434074 (423.9 KiB)  TX bytes:103089 (100.6 KiB)

Пробовал сделать по примеру этой статьи, но походу, не получилось.

Код: Выделить всё

iptables  -t nat -A POSTROUTING -s 192.168.0.2 --out-interface ppp0 -j SNAT  --to-source [мой ип]

не помогло.

На втором компе ессесно стоит ип 192.168.0.2 255.255.255.0 и гейт 192.168.0.1. Локалка есть, т.к по ssh коннектился оттуда к своему.
Как правильно задать правила
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: Перестал работать маскарадинг [solved]

Сообщение serzh-z »

Xaktyc
Маршрутизацию и DHCP (либо руками IP и маршруты) кто будет настраивать? На клиенте нужно прописать дежурный маршрут, ведущий на комп-роутер. На компе-роутере же нужно включить ip_forward через sysctl или через /proc. Так же на роутере в файрвол нужно добавить правило с целью "-j MASQUERADE" для IP (или подсети) машины с XP.
Спасибо сказали:
Аватара пользователя
Xaktyc
Сообщения: 604
ОС: Gentoo 2008.0, WinXP

Re: Перестал работать маскарадинг [solved]

Сообщение Xaktyc »

Тогда вопрос - какой командой мне посмотреть таблицы iptables?
и какой все сбросить? Ща буду пробовать))
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: Перестал работать маскарадинг [solved]

Сообщение serzh-z »

Xaktyc писал(а):
24.03.2009 14:23
Тогда вопрос - какой командой мне посмотреть таблицы iptables?
и какой все сбросить?
iptables -t <имя таблицы> -L
iptables -t <имя таблицы> -F
Спасибо сказали:
Аватара пользователя
agentprog
Сообщения: 362
Статус: Ad Astra per aspera
ОС: openSUSE 11.4, Arch

Re: Перестал работать маскарадинг [solved]

Сообщение agentprog »

http://www.gentoo.org/doc/ru/home-router-howto.xml
неплохая на мой взгляд инструкция. там все написано :) и даже на русском ))
No problems - just solutions!
Спасибо сказали:
Аватара пользователя
Xaktyc
Сообщения: 604
ОС: Gentoo 2008.0, WinXP

Re: Перестал работать маскарадинг [solved]

Сообщение Xaktyc »

Роут то сделал вроде

Код: Выделить всё

route print
===========================================================================
Список интерфейсов
0x1 ........................... MS TCP Loopback interface
0x2 ...00 16 e6 45 79 ef ...... Realtek RTL8168/8111 PCI-E Gigabit Ethernet NIC - ╠шэшяюЁЄ яырэшЁют∙шър яръхЄют
===========================================================================
===========================================================================
Активные маршруты:
Сетевой адрес           Маска сети      Адрес шлюза       Интерфейс  Метрика
          0.0.0.0          0.0.0.0      192.168.0.1     192.168.0.2      30
        127.0.0.0        255.0.0.0        127.0.0.1       127.0.0.1      1
      192.168.0.0    255.255.255.0      192.168.0.2     192.168.0.2      30
      192.168.0.2  255.255.255.255        127.0.0.1       127.0.0.1      30
    192.168.0.255  255.255.255.255      192.168.0.2     192.168.0.2      30
        224.0.0.0        240.0.0.0      192.168.0.2     192.168.0.2      30
  255.255.255.255  255.255.255.255      192.168.0.2     192.168.0.2      1
Основной шлюз:         192.168.0.1
===========================================================================
Постоянные маршруты:
  Отсутствует

Но немного не понял что есть:
нужно включить ip_forward через sysctl или через /proc. Так же на роутере в файрвол нужно добавить правило с целью "-j MASQUERADE" для IP (или подсети) машины с XP.
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: Перестал работать маскарадинг [solved]

Сообщение serzh-z »

Xaktyc писал(а):
24.03.2009 15:55
Но немного не понял что есть:

# echo 1 > /proc/sys/net/ipv4/ip_forward
# iptables -t nat -A POSTROUTING -o [мой ип] -j MASQUERADE
Спасибо сказали:
Аватара пользователя
agentprog
Сообщения: 362
Статус: Ad Astra per aspera
ОС: openSUSE 11.4, Arch

Re: Перестал работать маскарадинг [solved]

Сообщение agentprog »

добавить правило iptables с целью -j MASQUERADE :)
No problems - just solutions!
Спасибо сказали:
ghost
Сообщения: 158

Re: Перестал работать маскарадинг [solved]

Сообщение ghost »

у меня вот так вот всё устроенно и работает.
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.0.2 -j MASQUERADE
Спасибо сказали:
Аватара пользователя
Xaktyc
Сообщения: 604
ОС: Gentoo 2008.0, WinXP

Re: Перестал работать маскарадинг [solved]

Сообщение Xaktyc »

Все равно почему-то на другом компе не появляется инет.
А виндовый route надо прописывать на какой адрес?
ну там route add узел mask маска гейт
тоесть в узел что ставить? в линуксе то default... А там стоит вроде уже 0.0.0.0 но не пашет..
ну я выше таблицу приводил.
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: Перестал работать маскарадинг [solved]

Сообщение serzh-z »

Xaktyc писал(а):
24.03.2009 16:12
А виндовый route надо прописывать на какой адрес?
На внутренний адрес роутера.
Спасибо сказали:
Аватара пользователя
Xaktyc
Сообщения: 604
ОС: Gentoo 2008.0, WinXP

Re: Перестал работать маскарадинг [solved]

Сообщение Xaktyc »

Не... Я про УЗЕЛ, то, что гейтом будет роутер это понятно
Спасибо сказали:
Аватара пользователя
Xaktyc
Сообщения: 604
ОС: Gentoo 2008.0, WinXP

Re: Перестал работать маскарадинг [solved]

Сообщение Xaktyc »

Решено.
Видимо проблема была в sysctl.conf

Код: Выделить всё

net.ipv4.ip_forward = 0

Остальное, оказывается, делал правильно..
по той самой инструкции что дали выше сделал нат. Все пашет + сеть прикрыл.
pc linux # rc-update add iptables default
* iptables added to runlevel default
pc linux # iptables -F
pc linux # iptables -t nat -F
pc linux # export LAN=eth0
pc linux # export WAN=ppp0
pc linux # iptables -I INPUT 1 -i ${LAN} -j ACCEPT
pc linux # iptables -I INPUT 1 -i lo -j ACCEPT
pc linux # iptables -A INPUT -p UDP --dport bootps -i ! ${LAN} -j REJECT
pc linux # iptables -A INPUT -p UDP --dport domain -i ! ${LAN} -j REJECT
pc linux # iptables -A INPUT -p TCP --dport ssh -i ${WAN} -j ACCEPT
pc linux # iptables -A INPUT -p TCP -i ! ${LAN} -d 0/0 --dport 0:1023 -j DROP
pc linux # iptables -A INPUT -p UDP -i ! ${LAN} -d 0/0 --dport 0:1023 -j DROP
pc linux # iptables -I FORWARD -i ${LAN} -d 192.168.0.0/255.255.0.0 -j DROP
pc linux # iptables -A FORWARD -i ${LAN} -s 192.168.0.0/255.255.0.0 -j ACCEPT
pc linux # iptables -A FORWARD -i ${WAN} -d 192.168.0.0/255.255.0.0 -j ACCEPT
pc linux # iptables -t nat -A POSTROUTING -o ${WAN} -j MASQUERADE
pc linux # for f in /proc/sys/net/ipv4/conf/*/rp_filter ; do echo 1 > $f ; done
pc linux # /etc/init.d/iptables save
* Saving iptables state... [ ok ]
pc linux # /etc/init.d/iptables restart
* Saving iptables state... [ ok ]
* Stopping firewall... [ ok ]
* Loading iptables state and starting firewall... [ ok ]
pc linux # nano /etc/sysctl.conf
pc linux # /etc/init.d/iptables restart
* Saving iptables state... [ ok ]
* Stopping firewall... [ ok ]
* Loading iptables state and starting firewall...

Вот так сделано сейчас.
Спасибо сказали:
Аватара пользователя
Xaktyc
Сообщения: 604
ОС: Gentoo 2008.0, WinXP

Re: Перестал работать маскарадинг [solved]

Сообщение Xaktyc »

Вчера вечером по непонятным причинам инет пропал.
Утром я включил, инет есть. Но маршрутизации нет. Между компами сеть есть, на втором компе сети нету.
Сбросил все

Код: Выделить всё

iptables -F
iptables -t nat -F
iptables -filter -F

Перенастроил уже без указания в переменной (мало ли что)...

Код: Выделить всё

pc linux # iptables -I INPUT 1 -i eth0 -j ACCEPT
pc linux # iptables -I INPUT 1 -i lo -j ACCEPT
pc linux # iptables -A INPUT -p UDP --dport bootps -i ! eth0 -j REJECT
pc linux # iptables -A INPUT -p UDP --dport domain -i ! eth0 -j REJECT
pc linux # iptables -A INPUT -p TCP --dport ssh -i ppp0 -j ACCEPT
pc linux # iptables -A INPUT -p TCP -i ! eth0 -d 0/0 --dport 0:1023 -j DROP
pc linux # iptables -A INPUT -p UDP -i ! eth0 -d 0/0 --dport 0:1023 -j DROP
pc linux # iptables -I FORWARD -i eth0 -d 192.168.0.0/255.255.0.0 -j DROP
pc linux # iptables -A FORWARD -i eth0 -s 192.168.0.0/255.255.0.0 -j ACCEPT
pc linux # iptables -A FORWARD -i ppp0 -d 192.168.0.0/255.255.0.0 -j ACCEPT
pc linux # iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
pc linux # for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 1 > $f; done
pc linux # /etc/init.d/iptables save

Потом рестартнул иптаблес... Не возымело реакции. Если честно, я даже не представляю что могло быть причиной.
Кстати, инет пропал даже без перезагрузки, машина работала и тут он отвалился (не пингуется, страницы не открываются...я собсно пошел спать).
Спасибо сказали:
Аватара пользователя
Xaktyc
Сообщения: 604
ОС: Gentoo 2008.0, WinXP

Re: Перестал работать маскарадинг [solved]

Сообщение Xaktyc »

Заметил фишку, что DNSMASQ работает и когда на втором компе делаю

Код: Выделить всё

ping ya.ru

оно отвечает, что пингует адрес, выдает его ип(тобишь получил от днс).
Однако сами пакеты уже не проходят. "Превышен лимит ожидания чего-то там".
Создается впечатление, что виноват iptables.
Спасибо сказали:
Аватара пользователя
Xaktyc
Сообщения: 604
ОС: Gentoo 2008.0, WinXP

Re: Перестал работать маскарадинг [solved]

Сообщение Xaktyc »

Интересно, я там по инструкциям делал кой какие записи(выше в логах есть) в /proc/...
Iptables, думаю, тоже что-то там меняет.
Сейчас удалил iptables, думаю, мож почистить там и снова попробовать?
Только не знаю куда иптабл может писать параметры для фильтров и ната.
Буду признателен, если подскажете пути..
Спасибо сказали:
o6s
Сообщения: 187

Re: Перестал работать маскарадинг [solved]

Сообщение o6s »

Код: Выделить всё

#!/bin/bash
IPT='/sbin/iptables'
# interfaces
EXTIF='ppp0' //iface выходяший в инет
INTIF0='eth0' //iface в локалку провайдера
INTIF1='eth1' //iface в вашу локалку
# очистка правил
$IPT -F INPUT
$IPT -F FORWARD
$IPT -F OUTPUT
$IPT -t nat -F PREROUTING
$IPT -t nat -F POSTROUTING
$IPT -t mangle -F
#разрешаем ip_forward
echo 1 > /proc/sys/net/ipv4/ip_forward
# eth1 to local ISP
$IPT -t nat -A POSTROUTING -s 10.10.1.0/24 -o $INTIF0 -j MASQUERADE // натим всех из сети 10.10.1.0 255.255.255.0 в локалку провайдера через
//INTIF0 (eth0)
# eth1 to inet
$IPT -t nat -A POSTROUTING -s 10.10.1.0/24 -o $EXTIF -j MASQUERADE //// натим всех из сети 10.10.1.0 255.255.255.0 в инет через
//EXTIF (ppp0)

Собственно правим сеть 10.10.1.0/24 на то что у вас и меням интерфейсы в переменных.
Должно работать )

iptables -L -v - просмотр правил INPUT OUTPUT FORWARD
iptables -L -t nat - просмотр правил PREROUTING POSTROUTING
Спасибо сказали:
Аватара пользователя
Xaktyc
Сообщения: 604
ОС: Gentoo 2008.0, WinXP

Re: Перестал работать маскарадинг [solved]

Сообщение Xaktyc »

o6s писал(а):
08.04.2009 21:04
Собственно правим сеть 10.10.1.0/24 на то что у вас и меням интерфейсы в переменных.

10.10.1.0/24 менять на локалку с компом или с провом?
Судя по -s и после -o $INTIF0 - думаю, что локалку с вторым компом. Но все же не уверен.

И еще вопрос:
Важно ли это при каком состоянии демона IPTABLES делать?
И думаю, ведь надо после сделать
/etc/init.d/iptables save
/etc/init.d/iptables restart
так?
Спасибо сказали:
Аватара пользователя
Xaktyc
Сообщения: 604
ОС: Gentoo 2008.0, WinXP

Re: Перестал работать маскарадинг [solved]

Сообщение Xaktyc »

Сделал!
Работает. Спасибо:)
Правда перед этим пересобрана была вся система) не знаю что стало причиной - скрипт или нет, но все равно спасибо:)
Спасибо сказали: