Два IP адреса на одном сетевом интерфейсе. Помогите с проблемой!
Подскажите, как решить такую проблему: имеется Астериск 1.8.30 с одним сетевым интерфейсом, на котором назначены адреса IP1 и IP2.
И почему то, когда INVITE оператора приходит на IP1, то ответ 100 TRYING уже отправляется с IP2!
Что можно с этим сделать?
_________________
платный суппорт по мере возможностей
auto eth0:0 iface eth0:0 inet staticaddress 192.168.137.3 netmask 255.255.255.0 gateway 192.168.137.1
auto eth0:1 iface eth0:1 inet staticaddress 192.168.137.4 netmask 255.255.255.0 gateway 192.168.137.1
А какой именно роутинг показывать?
Данный конфиг фиктивный, и указан здесь для примера.
_________________
P4 3.0 + 1Gb CentOS 5.8 Aster 1.8.16
Не люблю gui-сборки: натуральный продукт вкуснее.
И еще: я ПРОФИ так как НЕ ЛЕНЮСЬ читать литературу.
можно сделать костыль, вывесить его на внешние статические IP.
_________________
http://mh.otx.ru Гибкие SIP/E1 шлюзы Alvis. SIP-Модернизация LDK/TDA:VoIP, Добавь E1 к Asterisk.
UPDATE! Теперь и T.38! Скидки для форумчан!!
Схема такая: IPa IP1
IPb IP2
IPa, IPb удаленные, находятся на оборудовании провайдера. IP1, IP2 находятся на одном физ. интерфейсе моего сервера.
Создаем файлик /etc/sysconfig/network-scripts/route-"имя интерфейса"
В нём прописываем:
IPa/32 via ШлюзIP1
IPb/32 via ШлюзIP2
Вроде так
_________________
С уважением, DarkUser.
Где такой скрипт хранится в ubuntu?
Если два то приколотить каждый * к отдельному IP в конфиге * bindadr externalip.
Если 1 то не получится.
Или я чет не понимаю в данном описании.
не может быть двух маршрутов по умолчанию, только один маршрут, все остальное только через роутинг
_________________
платный суппорт по мере возможностей
На данный момент имеем уже две сетевые карты. Каждой, на интерфейсы eth0 и eth1 соответственно установлен внешний IP1 и IP2.
Эти IP1 и IP2 принадлежат одному провайдеру, соответственно Gateway у них общий, т.е. один. Назовем его IP_gw.
Вторая сетевуха ситуацию некоим образом не решила, Asterisk тупит!
| Цитата: |
| Это не тупит, это просто маршрутизацию надо правильно настраивать |
Возможно. А как ее настроить?
Added after 2 hours 34 minutes:
Запутался окончательно...
Вот все, что есть:
| Код: |
| root@motor:~# netstat -r Таблица маршутизации ядра протокола IP Destination Gateway Genmask Flags MSS Window irtt Iface default 62.xxx.yyy.190 0.0.0.0 UG 0 0 0 eth0 62.xxx.yyy.160 * 255.255.255.224 U 0 0 0 eth2 62.xxx.yyy.160 * 255.255.255.224 U 0 0 0 eth0 192.168.0.0 * 255.255.255.0 U 0 0 0 eth1 |
/etc/network/interfaces
| Код: |
| # The loopback network interface auto lo iface lo inet loopback # The primary network interface iface eth0 inet static address 62.xxx.yyy.163 netmask 255.255.255.224 gateway 62.xxx.yyy.190 dns-nameservers 8.8.8.8 auto eth0 # local interface iface eth1 inet static address 192.168.0.1 netmask 255.255.255.0 auto eth1 iface eth2 inet static address 62.xxx.yyy.165 netmask 255.255.255.224 |
| Цитата: | ||
| Код: |
| 62.xxx.yyy.160 * 255.255.255.224 U 0 0 0 eth2 62.xxx.yyy.160 * 255.255.255.224 U 0 0 0 eth0 |
Два интерфейса в одну и туже подсеть.
Если вам нужен второй адрес из этой же подсети, то добавьте его alias`ом на этот же интерейс или повесьте его на lo0 или на lo1, а прова попросите пророутить второй через первый. В обоих случаях адрес добавлять с маской /32, например 62.xxx.yyy.165/32
В итоге сделал алиасом с родной /27 маской. Сеть заработала, оба внешних IP стали активными.
НО, в результате этого наблюдаю такую картину (IP1=eth0, IP2=eth0:0):
| Код: | |||||||||
| IPa ---REGISTER---> IP2 IPa | |||||||||
как добавляли ? что при этом видно в:
Астериск 2 сетевых интерфейса | |||||||||
| Задавал так: # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet static address 62.xxx.yyy.163 netmask 255.255.255.255 gateway 62.xxx.yyy.190 dns-nameservers 8.8.8.8 # local interface auto eth1 iface eth1 inet static address 192.168.0.1 netmask 255.255.255.0 # alias auto eth0:0 iface eth0:0 inet static address 62.xxx.yyy.165 netmask 255.255.255.255 Что было прописано в выводе тех команд - незнаю, т.к. отстрелило сеть и я вернул все назад. | |||||||||
не удивительно что "отстрелило", вы же оба адреса с маской /32 добавляете. уфф... пригласите системного администратора, он вам поможет, т.к. это азы работы сети | |||||||||
| а разве 255.255.255.255 и /32 не одно и то же?
| |||||||||
| Это одно и тоже, что есть один хост в подсети. Далее собразить почему у вас сеть отпала, после добавления обоих адресов с этой маской, сможете ? Внимательнее прочите что я писал выше.
| |||||||||
| почему сеть отстрелило понял. другой вопрос - как правильно надо было прописать?
| |||||||||
| Что-то здается мне что ему нужен multiple routing. serg128 Вот посмотри http://lartc.org/howto/lartc.rpdb.multiple-links.html, в этом случае ОС всегда будет отвечать по тому интерфейсу(адресу на интерфейсе) на который пришел пакет. | |||||||||
Так как я выше писал, один адрес с выданной маской /27, другой с /32. Для FreeBSD было бы так:
Где IFACENAME это имя нужно интерфейса.
Это когда провы разные и соответсвенно ипы из разных подсетей и шлюза два. А у него то пров один и опа ипа из одной подсети. | |||||||||
| Но только 62.xxx.yyy.190 это gateway. Я правильно понимаю, что финальный вариант будет выглядеть так:
| |||||||||
| ну да, ессно, просто копипаст меня подвел, не тот ип скопировал. | |||||||||