Проблема маршрутизации Asterisk - два маршрута с одинаковым интерфейсом - PullRequest
0 голосов
/ 21 октября 2019

В настоящее время у нас есть транк для нашего телефонного провайдера, который работает правильно. Однако нам нужно создать вторую магистраль для одного и того же поставщика через одно и то же оборудование (интерфейс / кабель) с разными учетными данными, и мы не можем сделать это правильно. Проблема в том, что кажется, что мы как-то получаем вызов по тому же старому маршруту.

ВНИМАНИЕ: я специально изменил некоторые ips, чтобы предотвратить публичное раскрытие наших данных.

Наш старый ip был 50.1. 120.58 и старый шлюз 50.1.120.57 Новый ip 50.1.132.174 и новый шлюз 50.1.132.173

Мне удалось добавить новый ip в интерфейс, добавив ifcfg-enp1s0: 0 со следующей конфигурацией:

VLAN=yes
DEVICE=enp1s0:0
DEFROUTE="no"
BOOTPROTO=none
NETMASK=255.255.255.252
TYPE=Ethernet
IPADDR=50.1.132.174
ZONE=internal
DESCRIPTION="additional network card ip 2"

В route-enp1s0 также есть "старые" настройки:

50.0.0.0/8 via 50.1.120.57 dev enp1s0

Теперь, с помощью этого конфига, я вижу, что эта регистрация работает, но я думаю, что вызовы неправильно маршрутизируются. И вот почему:

У нас есть две настройки sip:

[old]
disallow=all
type=peer
host=provider.com
context=trunk_old
hasexten=no
registersip=yes
trunkstyle=voip
outboundproxy=50.0.0.2
fromdomain=provider.com
fromuser=xxxxx
username=xxxxx
secret=xxxxx_secret
insecure=invite,port
canreinvite=no
allow=ulaw,alaw,gsm,g726
qualify=no
bindport=5060
dtmfmode=RFC2833

[new]
disallow=all
type=peer
host=provider.com
context=trunk_new
hasexten=no
registersip=yes
trunkstyle=voip
outboundproxy=50.0.0.2
fromdomain=provider.com
fromuser=yyyyy
username=yyyyy
secret=yyyyy_secret
insecure=invite,port
canreinvite=no
allow=ulaw,alaw,gsm,g726
qualify=no
bindport=5060
dtmfmode=RFC2833

Проблема в том, что вызовы, которые должны перейти на [новый], фактически переходят в [старый] контекст.

Я подозреваю, что это как-то связано с маршрутизацией, а именно с настройками в route-enp1s0:

50.0.0.0/8 via 50.1.120.57 dev enp1s0

, которые, по моему мнению, направляют все вызовы на шлюз из старого транка.

Мы попытались добавить измененияroute-enp1s0 до: 50.1.120.0/16 через 50.1.120.57 dev enp1s0

и добавление route-enp1s0: 0 со следующей настройкой: 50.1.132.0/16 через 50.1.132.173 dev enp1s0: 0

и даже первый транк перестал работать.

Есть идеи, что мы делаем не так и почему вызовы, которые должны исходить с нового маршрута, идут на старый маршрут?

PS: Так как кто-то просил, я тожеопубликуйте это, вот что мы попробовали:

TEST 1: ADDED ROUTE CONFIG:
route-enp1s0: 10.1.120.0/24 via 10.1.120.57 dev enp1s0
route-enp1s0:0: 10.1.132.0/24 via 10.1.132.173 dev enp1s0:0
NOTHING WORKS!

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         0.0.0.0         UG    0      0        0 eth0
10.1.120.0       10.1.120.57      255.255.255.0   UG    0      0        0 enp1s0
10.1.120.56      0.0.0.0         255.255.255.252 U     0      0        0 enp1s0
10.1.132.0       10.1.132.173     255.255.255.0   UG    0      0        0 enp1s0
10.1.132.172     0.0.0.0         255.255.255.252 U     0      0        0 enp1s0
link-local      0.0.0.0         255.255.0.0     U     1002   0        0 enp1s0
link-local      0.0.0.0         255.255.0.0     U     1003   0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0


TEST 2: ADDED ROUTE CONFIG:
route-enp1s0: 10.1.120.0/24 via 10.1.120.57 dev enp1s0
NOTHING WORKS!

[root@localhost ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         0.0.0.0         UG    0      0        0 eth0
10.1.120.0       10.1.120.57      255.255.255.0   UG    0      0        0 enp1s0
10.1.120.56      0.0.0.0         255.255.255.252 U     0      0        0 enp1s0
10.1.132.172     0.0.0.0         255.255.255.252 U     0      0        0 enp1s0
link-local      0.0.0.0         255.255.0.0     U     1002   0        0 enp1s0
link-local      0.0.0.0         255.255.0.0     U     1003   0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0


TEST 3: ADDED ROUTE CONFIG: (OLD)
route-enp1s0: 10.1.132.0/24 via 10.1.120.57 dev enp1s0
OLD WORKS, NEW TRUNK GOES TO OLD CONTEXT!

[root@localhost ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         0.0.0.0         UG    0      0        0 eth0
10.0.0.0        10.1.120.57      255.0.0.0       UG    0      0        0 enp1s0
10.1.120.56      0.0.0.0         255.255.255.252 U     0      0        0 enp1s0
10.1.132.172     0.0.0.0         255.255.255.252 U     0      0        0 enp1s0
link-local      0.0.0.0         255.255.0.0     U     1002   0        0 enp1s0
link-local      0.0.0.0         255.255.0.0     U     1003   0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

Надеюсь, что это может помочь.

...