Routing table

Установка, настройка, поддержка
stasovich
Сообщения: 12
Зарегистрирован: Вт мар 17, 2009 5:32 pm

Routing table

Сообщение stasovich »

Система Linux Gentoo, сетевые интерфейсы:
ppp0 - подключение к провайдеру по ВПН и получение статического IP.

eth0 - inet addr:192.168.129.106 Bcast:192.168.135.255 Mask:255.255.248.0

eth1 - inet addr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0

IP-сервера: 192.168.0.1 (в локальной сети), IP-клиента: 192.168.0.10 (в локальной сети привоен по DHCP),

в абиллсе пул адресов 10.10.0.10-10.10.0.254 маска 255.255.255.255

при подключении клиента следующее:

inet addr:10.10.0.1 P-t-P:10.10.0.193 Mask:255.255.255.255

Не получается раздать интернет - как правильно настроить routing, не судите строго не могу разобраться, что то делаю не так - а что не могу понять.

Конфиг /etc/pptpd.conf

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

ppp /usr/sbin/pppd
option /etc/ppp/options.pptpd
defaultroute
connections 500
remoteip 10.10.0.10-254
localip 10.10.0.1
Конфиг /etc/ppp/pptpd-options

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

plugin radius.so
plugin radattr.so
logfile /var/log/pptpd
debug
mtu 1476
mru 1476
+chap
nodeflate
novj
novjccomp
auth
lock
ms-dns 192.168.0.1
local
10.10.255.253:
defaultroute
proxyarp
вывод route -n

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

route -n 
Kernel IP routing table 
Destination		Gateway		Genmask		Flags	Metric	Ref	Use Iface 
10.10.2.1		  0.0.0.0			255.255.255.255	UH	0	0	0 ppp0 
10.10.0.193		0.0.0.0			255.255.255.255	UH	0	0	0 ppp1 
10.10.0.156		0.0.0.0			255.255.255.255	UH	0	0	0 ppp2 
192.168.0.0		0.0.0.0			255.255.255.0		U	0	0	0 eth1 
192.168.128.0	 0.0.0.0			255.255.248.0		U	0	0	0 eth0 
127.0.0.0		  0.0.0.0			255.0.0.0		    U	0	0	0 lo 
0.0.0.0			95.126.118.202	0.0.0.0			  UG	0	0	0 ppp0


NiTr0
Сообщения: 767
Зарегистрирован: Пт фев 08, 2008 4:46 pm

Сообщение NiTr0 »

В /etc/sysctl.conf tcnm строка

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

net.ipv4.ip_forward = 1
?

NiTr0
Сообщения: 767
Зарегистрирован: Пт фев 08, 2008 4:46 pm

Сообщение NiTr0 »

В /etc/sysctl.conf есть строка

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

net.ipv4.ip_forward = 1
?

stasovich
Сообщения: 12
Зарегистрирован: Вт мар 17, 2009 5:32 pm

Сообщение stasovich »

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

cat /etc/sysctl.conf | grep ip.forward
net.ipv4.ip_forward = 1

stasovich
Сообщения: 12
Зарегистрирован: Вт мар 17, 2009 5:32 pm

Сообщение stasovich »

Если в iptables прописать

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

iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
то тогда интернет появляется в сети 192.168.0.0/24 и без подключения к биллингу так как дефолтный шлюз стоит у клиента 192.168.0.1

NiTr0
Сообщения: 767
Зарегистрирован: Пт фев 08, 2008 4:46 pm

Сообщение NiTr0 »

Ну так с этого нужно было и начинать :)
Без NAT ессно ничего работать не будет.
Можно попробовать сделать так:

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

iptables -t nat -A POSTROUTING -i ppp+ -o ppp0 -j MASQUERADE

stasovich
Сообщения: 12
Зарегистрирован: Вт мар 17, 2009 5:32 pm

Сообщение stasovich »

ну так вроде если есть реальный статический IP - то по ману iptables лучше делать SNAT - или ошибаюсь?

stasovich
Сообщения: 12
Зарегистрирован: Вт мар 17, 2009 5:32 pm

Сообщение stasovich »

Вот что вышло при команде:

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

iptables -t nat -A POSTROUTING -i ppp+ -o ppp0 -j MASQUERADE
iptables v1.4.2: Can't use -i with POSTROUTING

stasovich
Сообщения: 12
Зарегистрирован: Вт мар 17, 2009 5:32 pm

Сообщение stasovich »

Нарыл такое в мане по этой ссылке http://www.opennet.ru/docs/RUS/iptables/#STARTINGSNAT
Критерий -i, --in-interface
Использование этого критерия допускается только в цепочках INPUT, FORWARD и PREROUTING, в любых других случаях будет вызывать сообщение об ошибке.
Критерий -o, --out-interface
Этот критерий допускается использовать только в цепочках OUTPUT, FORWARD и POSTROUTING, в противном случае будет генерироваться сообщение об ошибке.

значит правильная ошибка:

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

iptables v1.4.2: Can't use -i with POSTROUTING
Снова не ходит интернет в 10.10.0.0/32 через 10.10.0.1 :(

NiTr0
Сообщения: 767
Зарегистрирован: Пт фев 08, 2008 4:46 pm

Сообщение NiTr0 »

Таки да, в FORWARD тадо это правило...

stasovich
Сообщения: 12
Зарегистрирован: Вт мар 17, 2009 5:32 pm

Сообщение stasovich »

Выходит что решения пока нет

NiTr0
Сообщения: 767
Зарегистрирован: Пт фев 08, 2008 4:46 pm

Сообщение NiTr0 »

Есть
NiTr0 писал(а):Таки да, в FORWARD тадо это правило...
Т.е.

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

iptables -t nat -A FORWARD -i ppp+ -o ppp0 -j MASQUERADE 
Хотя можно вместь -i ppp+ указать -s 10.10.0.0/24 - суть та же будет.

stasovich
Сообщения: 12
Зарегистрирован: Вт мар 17, 2009 5:32 pm

Сообщение stasovich »

NiTr0 писал(а):Есть
NiTr0 писал(а):Таки да, в FORWARD тадо это правило...
Т.е.

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

iptables -t nat -A FORWARD -i ppp+ -o ppp0 -j MASQUERADE 
Хотя можно вместь -i ppp+ указать -s 10.10.0.0/24 - суть та же будет.

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

iptables -t nat -A FORWARD -i ppp+ -o ppp0 -j MASQUERADE
iptables: No chain/target/match by that name

stasovich
Сообщения: 12
Зарегистрирован: Вт мар 17, 2009 5:32 pm

Сообщение stasovich »

Уже у меня мыслей нет - почему не работает :(

stasovich
Сообщения: 12
Зарегистрирован: Вт мар 17, 2009 5:32 pm

Сообщение stasovich »

Да уж век живи век учись :D все гениальное просто:

если делать так

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

iptables -t nat -A POSTROUTING -s 10.10.0.0/32 -o ppp0 -j MASQUERADE
то ясное дело, что клиенты в интернет не пойдут, потому что в ip-pools с толку сбивает 10.0.0.0 - то есть - напрашивается вопрос? "с Какой маской создается сам пул" - но по категориям сетей - сеть 10.0.0.0 всегда ведь идет с маской /16 или 255.255.0.0 за исключением смены /16 - если посмотреть на это
10.10.0.0/32
то маска выходит 255.255.255.255

значит нужно делать

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

iptables -t nat -A POSTROUTING -s 10.10.0.0/16 -o ppp0 -j MASQUERADE
И тогда сеть 10.10.0.0 - полезет в интернет.

Проверю отпишусь, если заработает, вдруг у кого такая запара будет.

Ответить