View previous topic :: View next topic |
Author |
Message |
Sindar n00b
Joined: 23 Feb 2011 Posts: 2
|
Posted: Wed Feb 23, 2011 8:56 pm Post subject: Настройка шлюза |
|
|
Я полный нуб в 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 |
|
|
fank l33t
Joined: 16 Oct 2004 Posts: 794 Location: Minsk, Belarus
|
Posted: Sun Feb 27, 2011 12:45 pm Post subject: |
|
|
вопрос-то в чем собственно? _________________ Слово „христианство“ основано на недоразумении; в сущности, был один христианин, и тот умер на кресте. |
|
Back to top |
|
|
Sindar n00b
Joined: 23 Feb 2011 Posts: 2
|
Posted: Mon Feb 28, 2011 12:17 pm Post subject: |
|
|
Но в какой скрипт вставить не знаю и не уверен правильно ли.
Помимо этого надо же еще для внутренней сети делать NAT.
Как правильно организовать? |
|
Back to top |
|
|
fank l33t
Joined: 16 Oct 2004 Posts: 794 Location: Minsk, Belarus
|
Posted: Mon Mar 07, 2011 10:55 am Post subject: |
|
|
делаешь так:
в крон втыкаешь очистку всех правил и удаление всех цепочек каждые полчаса или того меньше
и экспериментируешь
переключение на запасного прова можно сделать двумя способами: "честный" failover, я как-то искал, но вменяемых надежных решений так и не нашел, или не понял, что такое было =)
второй способ - простой и надежный
пинговать основного прова, как только нет пинга - переключать на второго - просто удаляешь default gw и добавляешь на интерфейс второго
скрипт кладешь куда-нить на диск, например /scripts
запуск добавляешь в local.start
хотя правильнее будет все же сделать его сервисом
пример - здесь _________________ Слово „христианство“ основано на недоразумении; в сущности, был один христианин, и тот умер на кресте. |
|
Back to top |
|
|
|
|
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
|
|