Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Настройка шлюза
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Russian
View previous topic :: View next topic  
Author Message
Sindar
n00b
n00b


Joined: 23 Feb 2011
Posts: 2

PostPosted: Wed Feb 23, 2011 8:56 pm    Post subject: Настройка шлюза Reply with quote

Я полный нуб в Linux.
Прошу не пинать ногами сильно, знаю сейчас будет отправление в man и прочее.
Но времени изучить сейчас нет - кое что попытался, результаты ниже.

Имеется комп который должен стать шлюзом для локальной сети.
Ось CentOS 5.5 ( знаю что это к RedHat, но толлерантности у вас судя по форуму больше )

3 сетевых карты
1) провайдер 1

2) провайдер 2
DSL модем

3) Локальная сеть 192.168.0.xxx

DHCP, DNS сервис не установлен.
режим только консоль.

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

собственно тема поднималась кучу раз и рассматривалась тоже.
Но в данном случае нет физического доступа к серверу- только ssh.
страшно потерять линк к нему во время манипуляций.


Читал что можно всё сделать 1 скриптом который будет делать:
чистку старых настроек,
внесение новых настроек

И похоже отдельные скрипты на пинг внешних адресов и преключение интерфейса при падении.


то что навоял. Но в какой скрипт вставить не знаю и не уверен правильно ли.

$IP_LOCAL="192.168.0.1" #адрес нашего маршрутизатора в локальной сети.
$IP1="xx.xxx.xxx.14" #адрес нашего маршрутизатора в сети первого провайдера.
$IP2="192.168.1.2" #адрес нашего марщрутизатора в сети второго провайдера.

$IF_LOCAL="eth0" #имя интерфейса на локальную сеть
$IF1="eth1" #имя интерфейса на первого провайдера.
$IF2="eth2" #имя интерфейса на второго провайдера.

$NET_LOCAL="192.168.0.0/24" #локальная сеть.
$NET1="xx.xxx.xxx.12/30" #адрес сети в которой гейт нашего первого провайдера.
$NET2="192.168.1.0/24" #адрес сети в которой гейт нашего второго провайдера.

$GW1="xx.xxx.xxx.13" #гейт первого провайдера.
$GW2="192.168.1.1" #гейт второго провайдера.

ip route add $NET1 dev $IF1 src $IP1 table T1
ip route add default via $GW1 table T1

ip route add $NET2 dev $IF2 src $IP2 table T2
ip route add default via $GW2 table T2

ip route add $NET1 dev $IF1 src $IP1
ip route add $NET2 dev $IF2 src $IP2

ip route add default via $GW1

ip rule add from $IP1 table T1
ip rule add from $IP2 table T2

ip route add $NET_LOCAL dev $IF_LOCAL table T1
ip route add $NET2 dev $IF2 table T1
ip route add 127.0.0.0/8 dev lo table T1

ip route add $NET_LOCAL dev $IF_LOCAL table T2
ip route add $NET1 dev $IF1 table T2
ip route add 127.0.0.0/8 dev lo table T2

----------------

просьба откликнуться.
Back to top
View user's profile Send private message
fank
l33t
l33t


Joined: 16 Oct 2004
Posts: 794
Location: Minsk, Belarus

PostPosted: Sun Feb 27, 2011 12:45 pm    Post subject: Reply with quote

вопрос-то в чем собственно?
_________________
Слово „христианство“ основано на недоразумении; в сущности, был один христианин, и тот умер на кресте.
Back to top
View user's profile Send private message
Sindar
n00b
n00b


Joined: 23 Feb 2011
Posts: 2

PostPosted: Mon Feb 28, 2011 12:17 pm    Post subject: Reply with quote

Но в какой скрипт вставить не знаю и не уверен правильно ли.
Помимо этого надо же еще для внутренней сети делать NAT.
Как правильно организовать?
Back to top
View user's profile Send private message
fank
l33t
l33t


Joined: 16 Oct 2004
Posts: 794
Location: Minsk, Belarus

PostPosted: Mon Mar 07, 2011 10:55 am    Post subject: Reply with quote

делаешь так:
в крон втыкаешь очистку всех правил и удаление всех цепочек каждые полчаса или того меньше
и экспериментируешь

переключение на запасного прова можно сделать двумя способами: "честный" failover, я как-то искал, но вменяемых надежных решений так и не нашел, или не понял, что такое было =)
второй способ - простой и надежный
пинговать основного прова, как только нет пинга - переключать на второго - просто удаляешь default gw и добавляешь на интерфейс второго

скрипт кладешь куда-нить на диск, например /scripts
запуск добавляешь в local.start
хотя правильнее будет все же сделать его сервисом
пример - здесь
_________________
Слово „христианство“ основано на недоразумении; в сущности, был один христианин, и тот умер на кресте.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Russian All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum