не боимся, ломать там нечего. спустя пару часов все заработало как надо. Скорее всего дело было в дна-кеше
Merk ( 2018-05-16 20:28:26 +0400 )редактироватьЗдравствуйте. Есть Centos7, на котором собран чистый Asterisk certified/13.18-cert3 На сервере 2 сетевые карты, первая смотрит в локалку с выходом в интернет. Вторая смотрит в серую сеть провайдера, который подает сип-транк. В качестве ДНС-сервера в системе указан микротик, в котором прописана статическая DNS-запись: sip.telecom.kz - 10.0.0.116
Эта же запись указана в файле hosts. В системе настроен маршрут к провайдеру через вторую сетевую карту:
[root@asteriskproxy ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.8.0.5 0.0.0.0 UG 100 0 0 eth0
10.0.0.0 0.0.0.0 255.255.255.0 U 101 0 0 eth1
10.8.0.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
10.28.20.0 0.0.0.0 255.255.252.0 U 101 0 0 eth1
С помощью канала PJSIP настроен транк к провайдеру:
[34842552]
type=registration
transport=transport-udp
outbound_auth=34842552_auth
server_uri=sip:sip.telecom.kz
client_uri=sip:34842552@sip.telecom.kz
retry_interval=60
expiration=120
contact_user=34842552
[34842552_auth]
type=auth
auth_type=userpass
password=pass
username=34842552
[34842552]
type=aor
contact=sip:sip.telecom.kz:5060
qualify_frequency=60
[34842552]
type=endpoint
transport=transport-udp
context=from-trunk
disallow=all
allow=alaw
allow=ulaw
outbound_auth=34842552_auth
aors=34842552
from_user=34842552
from_domain=sip.telecom.kz
direct_media=no
ice_support=no
[34842552]
type=identify
endpoint=34842552
match=sip.telecom.kz
вопрос: почему Астериск всегда резольвит ДНС-имя провайдера не в нужный адрес (10.0.0.116), а во внешний адрес этого ДНС-имени 92.46.61.21 ?
<--- Transmitting SIP request (433 bytes) to UDP:92.46.61.21:5060 --->
OPTIONS sip:sip.telecom.kz:5060 SIP/2.0
Via: SIP/2.0/UDP 10.8.0.63:5060;rport;branch=z9hG4bKPjc0b529b9-e932-434d-ae14-134b359f0945
From: <sip:34842552@sip.telecom.kz>;tag=8ba396ca-4277-4612-bd9b-b2cbaefac267
To: <sip:sip.telecom.kz>
Contact: <sip:34842552@10.8.0.63:5060>
Call-ID: 8e366049-e811-49e1-ba1d-575cdff30ca3
CSeq: 22215 OPTIONS
Max-Forwards: 70
User-Agent: Asterisk PBX certified/13.18-cert3
Content-Length: 0
<--- Received SIP response (342 bytes) from UDP:92.46.61.21:5060 --->
SIP/2.0 403 Forbidden
Via: SIP/2.0/UDP 10.8.0.63:5060;received=5.34.47.91;branch=z9hG4bKPjc0b529b9-e932-434d-ae14-134b359f0945;rport=5060
From: <sip:34842552@sip.telecom.kz>;tag=8ba396ca-4277-4612-bd9b-b2cbaefac267
To: <sip:sip.telecom.kz>;tag=aprqngfrt-rdc1n3300glec
Call-ID: 8e366049-e811-49e1-ba1d-575cdff30ca3
CSeq: 22215 OPTIONS
Вопрос2: как достичь желаемого: надо регистрироваться у провайдера по ДНС-имени, но имя это должно разрешаться в адрес 10.0.0.116 чтобы трафик уходил не через инет, а через вторую сетевую карту.
В системе адрес резольвится как надо:
[root@asteriskproxy ~]# ping sip.telecom.kz
PING sip.telecom.kz (10.0.0.116) 56(84) bytes of data.
64 bytes from sip.telecom.kz (10.0.0.116): icmp_seq=1 ttl=59 time=22.7 ms
64 bytes from sip.telecom.kz (10.0.0.116): icmp_seq=2 ttl=59 time=21.4 ms
64 bytes from sip.telecom.kz (10.0.0.116): icmp_seq=3 ttl=59 time=22.8 ms
Запрещайте получение dns сервера у провайдера и будет счастье, а так же шлюз по умолчанию: в файле dhclient.conf interface "eth0" { request subnet-mask, broadcast-address, time-offset, domain-name, host-name, interface-mtu, rfc3442-classless-static-routes; }
Не понимаю я людей, которые цепляют вторую сетевуху в комп при наличии Микротика.. Не думали что Вас поломать могут из этой серой провайдерской сетки?
По теме - если уж приспичило DNS: ставьте локальный кэширующий DNS сервак на комп с астером. Припарки с etc/hosts не помогут.
не боимся, ломать там нечего. спустя пару часов все заработало как надо. Скорее всего дело было в дна-кеше
Merk ( 2018-05-16 20:28:26 +0400 )редактироватьЗадан: 2018-05-16 17:27:56 +0400
Просмотрен: 1,285 раз
Обновлен: Sep 20 '18
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
Я просил IP, потому что у них с DNS были проблемы, или у нас...
И.. поэтому.. добавил в разрешенные файрфола все их IP...
Out ( 2018-05-16 17:59:56 +0400 )редактироватьНастроить на asterisk свой DNS в виде BIND. Сделать nslookup ya.ru - посмотреть кто сервер DNS - если что то отличное от 127.0.0.1 скрутить настройки сетевой карты что бы брал настрой от себя. Выключить в asterisk самостоятельный поиск srvlookup=no
awsswa ( 2018-05-18 13:38:52 +0400 )редактировать