SRV-записи для GTalk в Google Apps
Для того, чтобы плавно перейти из ICQ в Jabber, я решил настроить свой GTalk с обычным icq-транспортом.
Про этапы настройки достаточно много рассказано в интернете: надо просто соединиться с GTalk через какой-нибудь Jabber-клиент (например, Psi), а потом в нём добавить ICQ-транспорт (например, icq.jabber.org.ru).
У меня GTalk «висит» на Google Apps (в собственном домене). Однако, попытавшись просмотреть Service Discovery в Psi, у меня ничего не получилось увидеть:
Немного поискав в интернете, я нашёл решение этой проблемы: всё дело оказалось в SRV-записях DNS.
В справочной службе Google написано следующее:
Хотя мы объединены через федерацию с рядом других служб, некоторые из них в настоящий момент недоступны в сети Google Talk, и ваши пользователи не смогут общаться в чате с их абонентами.
Если требуется предоставить пользователям возможность общаться в чате с людьми, подключенными к сети Google Talk через объединенные в федерацию сети, то необходимо изменить записи служб (SRV). Для того чтобы пользователи могли общаться в чате с другими пользователям Служб Google для вашего домена, изменять записи SRV не требуется.
То есть для нормальной работы необходимо настроить SRV. Запись SRV нужна, чтобы указать сервер для обработки комбинации сервис/протокол/имя домена. Например, эта запись помогает соединиться с SIP пользователем, так же как MX запись помогает доставить электронную почту на сервер адресата.
Я всё настроил, как было написано в справке, однако ничего не получилось. Оказалось, что они указали не полный набор SRV-записей. Я нашёл, что надо указывать:
| _xmpp-server._tcp.gmail.com. | SRV | 5 | 0 | 5269 | xmpp-server.l.google.com. |
| _xmpp-server._tcp.gmail.com. | SRV | 20 | 0 | 5269 | xmpp-server1.l.google.com. |
| _xmpp-server._tcp.gmail.com. | SRV | 20 | 0 | 5269 | xmpp-server2.l.google.com. |
| _xmpp-server._tcp.gmail.com. | SRV | 20 | 0 | 5269 | xmpp-server3.l.google.com. |
| _xmpp-server._tcp.gmail.com. | SRV | 20 | 0 | 5269 | xmpp-server4.l.google.com. |
| _jabber._tcp.gmail.com. | SRV | 5 | 0 | 5269 | xmpp-server.l.google.com. |
| _jabber._tcp.gmail.com. | SRV | 20 | 0 | 5269 | xmpp-server1.l.google.com. |
| _jabber._tcp.gmail.com. | SRV | 20 | 0 | 5269 | xmpp-server2.l.google.com. |
| _jabber._tcp.gmail.com. | SRV | 20 | 0 | 5269 | xmpp-server3.l.google.com. |
| _jabber._tcp.gmail.com. | SRV | 20 | 0 | 5269 | xmpp-server4.l.google.com. |
| _xmpp-client._tcp.gmail.com. | SRV | 5 | 0 | 5222 | talk.l.google.com. |
| _xmpp-client._tcp.gmail.com. | SRV | 20 | 0 | 5222 | talk1.l.google.com. |
| _xmpp-client._tcp.gmail.com. | SRV | 20 | 0 | 5222 | talk2.l.google.com. |
| _xmpp-client._tcp.gmail.com. | SRV | 20 | 0 | 5222 | talk3.l.google.com. |
| _xmpp-client._tcp.gmail.com. | SRV | 20 | 0 | 5222 | talk4.l.google.com. |
Только вместо gmail.com необходимо указать свой домен. После этих настроек у меня всё заработало:
Записи SRV надо настраивать в управлении зоной своего DNS. Правда менять SRV можно не у всех хостеров.
Коммент.(23)