несколько провайдеров, локальная сеть и доступ к веб сайту из Интернет

2013-12-26 Пенетрантность Скубриев Владимир
Подскажите пожалуйста как быть. С несколькими провайдерами еще не разу не 
сталкивался.
Суть проблемы гораздо шире. Но я на примере попытаюсь спросить конкретную вещь.

Предположим есть сервер, к которому подключены несколько провайдеров.

Назовем их интерфейсы ppp50 и ppp60.  

За сервером ЛВС, которой нужен доступ в Интернет только через одного провайдера.

Я переключаю шлюз по умолчанию на этом сервере и клиенты соответственно выходят 
в сеть через разных провайдеров.

С доступом в Интернет у клиентов ЛВС проблем нет:

Эти два правила для маршрута по умолчанию решают все мои проблемы, но только 
для провайдера по умолчанию:

iptables -t nat -A POSTROUTING -o $INETNAME -j MASQUERADE
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Т.е. INETNAME=pppX, где pppX - интерфейс из таблицы маршрутов.

ip route
default via 75.78.55.56 dev pppX
...

Но я не понимаю, что я должен сделать, чтобы работающий на сервере сайт был 
доступен из Интернет через всех подключенных провайдеров.

Причем iptables здесь не причем, в том смысле что все разрешающие правила у 
меня прописаны для всех внешних интерфейсов. 

Я понимаю что дело в маршрутизации или NAT, но не более того. Причину проблемы 
я не понимаю.

Спасибо. 


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/218831388080...@web14g.yandex.ru



Re: несколько провайдеров, локальная сеть и доступ к веб сайту из Интернет

2013-12-26 Пенетрантность Konstantin Matyukhin
Без PI адресов вы, надеюсь, по понятной причине всегда будете привязаны к
какому-нибудь провайдеру. Если, конечно, не принимать во внимание схем с
балансировкой, например, через DNS.

-- 
С уважением,
Константин Матюхин


Re: несколько провайдеров, локальная сеть и доступ к веб сайту из Интернет

2013-12-26 Пенетрантность Alexander Wiedergold WIEDERGOLD.NET

Am 26.12.2013 18:50, schrieb Скубриев Владимир:

Подскажите пожалуйста как быть. С несколькими провайдерами еще не разу не 
сталкивался.
Суть проблемы гораздо шире. Но я на примере попытаюсь спросить конкретную вещь.

Предположим есть сервер, к которому подключены несколько провайдеров.

Назовем их интерфейсы ppp50 и ppp60.


Здесь много документации

4.2. Маршрутизация через несколько каналов/провайдеров.
http://www.opennet.ru/docs/RUS/LARTC/x348.html



За сервером ЛВС, которой нужен доступ в Интернет только через одного провайдера.

Я переключаю шлюз по умолчанию на этом сервере и клиенты соответственно выходят 
в сеть через разных провайдеров.

С доступом в Интернет у клиентов ЛВС проблем нет:

Эти два правила для маршрута по умолчанию решают все мои проблемы, но только для 
провайдера по умолчанию:

iptables -t nat -A POSTROUTING -o $INETNAME -j MASQUERADE
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Т.е. INETNAME=pppX, где pppX - интерфейс из таблицы маршрутов.

ip route
default via 75.78.55.56 dev pppX
...

Но я не понимаю, что я должен сделать, чтобы работающий на сервере сайт был 
доступен из Интернет через всех подключенных провайдеров.

Причем iptables здесь не причем, в том смысле что все разрешающие правила у 
меня прописаны для всех внешних интерфейсов.

Я понимаю что дело в маршрутизации или NAT, но не более того. Причину проблемы 
я не понимаю.

Спасибо.





--
..
http://wiedergold.net/


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/l9i4ll$e42$1...@online.de



Re: несколько провайдеров, локальная сеть и доступ к веб сайту из Интернет

2013-12-26 Пенетрантность Mikhail A Antonov
On 26/12/13 21:48, Скубриев Владимир wrote:
 Подскажите пожалуйста как быть. С несколькими провайдерами еще не разу не 
 сталкивался.
 Суть проблемы гораздо шире. Но я на примере попытаюсь спросить конкретную 
 вещь.

 Предположим есть сервер, к которому подключены несколько провайдеров.
...
 Но я не понимаю, что я должен сделать, чтобы работающий на сервере сайт был 
 доступен из Интернет через всех подключенных провайдеров.
Используй правила iproute2.

Единоразово добавь в файл /etc/iproute2/rt_tables две строки
{
200 ISP1
201 ISP2
}
(Без скобок. Просто в конец допиши.)

Затем при подключении выполняй:

ip route add default dev ppp50 table ISP1
ip route add IP_ppp50 dev ppp50  proto kernel  scope link  src
IP_ppp50 table ISP1
ip rule add oif ppp50 table ISP1

ip route add default dev ppp60 table ISP2
ip route add IP_ppp60 dev ppp60  proto kernel  scope link  src
IP_ppp60 table ISP2
ip rule add oif ppp60 table ISP2

Я конкретно эти скрипты не проверял, но должно работать.

Эффект будет такой - к какому IP обратились - с того и ушёл ответ. И
ушёл через правильного провайдера.

Кстати, скриптам, которые выполняются после ppp-подключения, IP
передаётся в параметрах. Его не надо выцеплять.

 С доступом в Интернет у клиентов ЛВС проблем нет:

 Эти два правила для маршрута по умолчанию решают все мои проблемы, но только 
 для провайдера по умолчанию:

 iptables -t nat -A POSTROUTING -o $INETNAME -j MASQUERADE
 iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS 
 --clamp-mss-to-pmtu
Напиши один раз
iptables -t nat -A POSTROUTING -o ppp+ -j MASQUERADE
и больше не трогай.
Второе правило работает независимо от интерфейса -- и его не трогай.
Вообще говоря, и без него обычно всё работает.

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

ip route add default scope global nexthop dev ppp50 weight 1 \
nexthop dev ppp60 weight 1

Таким образом дашь нагрузку на два канала сразу при некоторых условиях
можешь получить сложение скоростей. Например, при использовании
торрентов. Даже при обычном скачивании двух файлов с двух разных
серверов, при условии что звёзды сложатся так, что первый файл начнёт
качаться через первый канал, а второй - через второй.
Я как-то делал такой фокус с тремя 3G-модемами и небольшим офисом.
Хочу сразу предостеречь - эта балансировка не даёт отказоустойчивости.
За этим следи сам.


-- 
Best regards,
Mikhail
-
WWW: http://www.antmix.ru/
XMPP: ant...@stopicq.ru



signature.asc
Description: OpenPGP digital signature


Re: несколько провайдеров, локальная сеть и доступ к веб сайту из Интернет

2013-12-26 Пенетрантность Vladimir Skubriev

27.12.2013 01:07, Mikhail A Antonov пишет:

On 26/12/13 21:48, Скубриев Владимир wrote:

Подскажите пожалуйста как быть. С несколькими провайдерами еще не разу не 
сталкивался.
Суть проблемы гораздо шире. Но я на примере попытаюсь спросить конкретную вещь.

Предположим есть сервер, к которому подключены несколько провайдеров.

...

Но я не понимаю, что я должен сделать, чтобы работающий на сервере сайт был 
доступен из Интернет через всех подключенных провайдеров.

Используй правила iproute2.

Единоразово добавь в файл /etc/iproute2/rt_tables две строки
{
200 ISP1
201 ISP2
}
(Без скобок. Просто в конец допиши.)

Затем при подключении выполняй:

ip route add default dev ppp50 table ISP1
ip route add IP_ppp50 dev ppp50  proto kernel  scope link  src
IP_ppp50 table ISP1
ip rule add oif ppp50 table ISP1

ip route add default dev ppp60 table ISP2
ip route add IP_ppp60 dev ppp60  proto kernel  scope link  src
IP_ppp60 table ISP2
ip rule add oif ppp60 table ISP2

Я конкретно эти скрипты не проверял, но должно работать.

Эффект будет такой - к какому IP обратились - с того и ушёл ответ. И
ушёл через правильного провайдера.

Кстати, скриптам, которые выполняются после ppp-подключения, IP
передаётся в параметрах. Его не надо выцеплять.


С доступом в Интернет у клиентов ЛВС проблем нет:

Эти два правила для маршрута по умолчанию решают все мои проблемы, но только для 
провайдера по умолчанию:

iptables -t nat -A POSTROUTING -o $INETNAME -j MASQUERADE
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Напиши один раз
iptables -t nat -A POSTROUTING -o ppp+ -j MASQUERADE
и больше не трогай.
Второе правило работает независимо от интерфейса -- и его не трогай.
Вообще говоря, и без него обычно всё работает.

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

ip route add default scope global nexthop dev ppp50 weight 1 \
 nexthop dev ppp60 weight 1

Таким образом дашь нагрузку на два канала сразу при некоторых условиях
можешь получить сложение скоростей. Например, при использовании
торрентов. Даже при обычном скачивании двух файлов с двух разных
серверов, при условии что звёзды сложатся так, что первый файл начнёт
качаться через первый канал, а второй - через второй.
Я как-то делал такой фокус с тремя 3G-модемами и небольшим офисом.
Хочу сразу предостеречь - эта балансировка не даёт отказоустойчивости.
За этим следи сам.



Спасибо.

--
--
Faithfully yours,

Vladimir Skubriev


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/52bd15b3.2050...@skubriev.ru