SRV: различия между версиями
H31 (обсуждение | вклад) м |
Rain (обсуждение | вклад) м (→Ссылки: + генератор SRV) |
||
(не показано 8 промежуточных версий 2 участников) | |||
Строка 1: | Строка 1: | ||
Иногда возникает ситуация, когда реальный адрес сервера не совпадает с адресом из [[JID]]'а. Например, в случае с | Иногда возникает ситуация, когда реальный адрес сервера не совпадает с адресом из [[JID]]'а. Например, в случае с [[Google Talk]] [[Jabber ID]] имеет вид user@gmail.com, а ''реальный адрес сервера'' - '''talk.google.com'''. В таком случае, если не предпринято специальных мер, клиент попытается соединиться с gmail.com, но не обнаружит там Jabber-сервера и не сможет подключиться. Во времена "молодости" Jabber решение было одно: указать адрес сервера в [[Настройки сети в Jabber-клиентах|настройке клиента]] в специальном поле "адрес для подключения" (или "хост", "адрес сервера", "сервер"). Такая же проблема возникает и в соединениях "сервер-сервер", и тут указывать для каждого домена свой сервер довольно сложно. Поэтому было решено сделать так, чтобы программы сами могли находить реальный адрес сервера, для чего решено было использовать специальные записи в DNS - тип "SRV". | ||
Клиенты, умеющие считывать SRV запись DNS: | |||
В настоящее время по стандарту используются такие записи SRV: | |||
* '''_xmpp-client._tcp.EXAMPLE.COM''' (порт '''5222''') - чтобы указать, куда подключаться [[Клиенты Jabber|jabber-клиенту]] (нешифрованные и STARTTLS-подключения) | |||
* '''_xmpps-client._tcp.EXAMPLE.COM''' (порт '''5223''') - аналогичная запись для TLS-подключений клиентов | |||
* '''_xmpp-server._tcp.EXAMPLE.COM''' (порт '''5269''') - чтобы указать, куда подключаться [[Публичные серверы Jabber|jabber-серверу]] | |||
* '''_xmpps-server._tcp.EXAMPLE.COM''' (порт '''5270''') - аналогичная запись для TLS-подключений серверов. | |||
Для старых серверов иногда бывает необходимо указать еще одну запись - '''_jabber._tcp.domain.tld''', указывающую на адрес сервера. | |||
Записи ниже служат для работы сервиса аудио/видеозвонков через jabber<ref name="avcalls">https://www.process-one.net/blog/how-to-set-up-ejabberd-video-voice-calling/</ref>: | |||
* '''_stun._tcp.EXAMPLE.COM''' (порт '''3478''') - [[ru_wikipedia:STUN|STUN]] через [[ru_wikipedia:TCP|TCP]] | |||
* '''_stun._udp.EXAMPLE.COM''' (порт '''3478''') - STUN через [[ru_wikipedia:UDP|UDP]] | |||
* '''_stuns._tcp.EXAMPLE.COM''' (порт '''5349''') - шифрованный STUN через TCP | |||
* '''_turn._tcp.EXAMPLE.COM''' (порт '''3478''') - [[ru_wikipedia:Traversal Using Relay NAT|TURN]] через [[ru_wikipedia:TCP|TCP]] | |||
* '''_turn._udp.EXAMPLE.COM''' (порт '''3478''') - TURN через UDP | |||
* '''_turns._tcp.EXAMPLE.COM''' (порт '''5349''') - шифрованный TURN через TCP | |||
Клиенты, умеющие считывать SRV-запись DNS: | |||
* [[Изображение:Icon 16-16 psi.png]] [[Psi]] | * [[Изображение:Icon 16-16 psi.png]] [[Psi]] | ||
* [[Изображение:Logo 16-16 gajim.png]] [[Gajim]] | * [[Изображение:Logo 16-16 gajim.png]] [[Gajim]] | ||
* [[Изображение:Icon 16-16 pidgin.png]] [[Pidgin]] | * [[Изображение:Icon 16-16 pidgin.png]] [[Pidgin]] | ||
* [[Файл:Conversations logo.png|16px|link=Conversations]] [[Conversations]] | |||
* [[Файл:Quicksy logo.png|16px|link=Quicksy]] [[Quicksy]] | |||
* [[Файл:Blabber logo android.png|16px|link=Blabber.im]] [[Blabber.im]] | |||
* [[Изображение:Jabbim logo 16-16.png]] [[Jabbim]] | * [[Изображение:Jabbim logo 16-16.png]] [[Jabbim]] | ||
* [[Изображение:Icon 16-16 miranda.png]] [[Miranda]] | * [[Изображение:Icon 16-16 miranda.png]] [[Miranda]] | ||
* [[Изображение:Logo 16-16 qip-logo.png.png]] [[QIP Infium]] | * [[Изображение:Logo 16-16 qip-logo.png.png]] [[QIP Infium]] | ||
* [[Изображение:Logo 16-16 bombus.png]] [[Bombus]] | * [[Изображение:Logo 16-16 bombus.png]] [[Bombus]] и [[Bombus-ng]] | ||
* [[Изображение:Logo 16-16 tkabber.png]] [[Tkabber]] | * [[Изображение:Logo 16-16 tkabber.png]] [[Tkabber]] | ||
* [[Изображение:Icon 16-16 pandion.png]] [[Pandion]] | * [[Изображение:Icon 16-16 pandion.png]] [[Pandion]] | ||
* [[Изображение:Logo 16-16 jajc.png]] [[JAJC]] | * [[Изображение:Logo 16-16 jajc.png]] [[JAJC]] | ||
* [[Изображение:Yaonline 16 logo.png]] [[Я.Онлайн клиент|Я.Онлайн]] | * [[Изображение:Yaonline 16 logo.png]] [[Я.Онлайн клиент|Я.Онлайн]] | ||
* [[Изображение:Logo 16-16 coccinella.png]] [[Coccinella]] | |||
==Сноски== | |||
<references/> | |||
==Ссылки== | ==Ссылки== | ||
[[JRD:DNS SRV|Подробнее о SRV-записи]] на [[JRD:|JRuDevels Wiki]] | * [[JRD:DNS SRV|Подробнее о SRV-записи]] на [[JRD:|JRuDevels Wiki]] | ||
* [https://jms1.net/jabberd2/srv.shtml Генератор SRV-записей для Jabber] | |||
[[Category:Сеть]][[Category:Тонкости работы]] | [[Category:Сеть]][[Category:Тонкости работы]][[Категория:Свой сервер]] |
Текущая версия на 17:32, 25 сентября 2022
Иногда возникает ситуация, когда реальный адрес сервера не совпадает с адресом из JID'а. Например, в случае с Google Talk Jabber ID имеет вид user@gmail.com, а реальный адрес сервера - talk.google.com. В таком случае, если не предпринято специальных мер, клиент попытается соединиться с gmail.com, но не обнаружит там Jabber-сервера и не сможет подключиться. Во времена "молодости" Jabber решение было одно: указать адрес сервера в настройке клиента в специальном поле "адрес для подключения" (или "хост", "адрес сервера", "сервер"). Такая же проблема возникает и в соединениях "сервер-сервер", и тут указывать для каждого домена свой сервер довольно сложно. Поэтому было решено сделать так, чтобы программы сами могли находить реальный адрес сервера, для чего решено было использовать специальные записи в DNS - тип "SRV".
В настоящее время по стандарту используются такие записи SRV:
- _xmpp-client._tcp.EXAMPLE.COM (порт 5222) - чтобы указать, куда подключаться jabber-клиенту (нешифрованные и STARTTLS-подключения)
- _xmpps-client._tcp.EXAMPLE.COM (порт 5223) - аналогичная запись для TLS-подключений клиентов
- _xmpp-server._tcp.EXAMPLE.COM (порт 5269) - чтобы указать, куда подключаться jabber-серверу
- _xmpps-server._tcp.EXAMPLE.COM (порт 5270) - аналогичная запись для TLS-подключений серверов.
Для старых серверов иногда бывает необходимо указать еще одну запись - _jabber._tcp.domain.tld, указывающую на адрес сервера. Записи ниже служат для работы сервиса аудио/видеозвонков через jabber[1]:
- _stun._tcp.EXAMPLE.COM (порт 3478) - STUN через TCP
- _stun._udp.EXAMPLE.COM (порт 3478) - STUN через UDP
- _stuns._tcp.EXAMPLE.COM (порт 5349) - шифрованный STUN через TCP
- _turn._tcp.EXAMPLE.COM (порт 3478) - TURN через TCP
- _turn._udp.EXAMPLE.COM (порт 3478) - TURN через UDP
- _turns._tcp.EXAMPLE.COM (порт 5349) - шифрованный TURN через TCP
Клиенты, умеющие считывать SRV-запись DNS:
- Psi
- Gajim
- Pidgin
- Conversations
- Quicksy
- Blabber.im
- Jabbim
- Miranda
- QIP Infium
- Bombus и Bombus-ng
- Tkabber
- Pandion
- JAJC
- Я.Онлайн
- Coccinella