NAT traversal (постановка)
Материал из GedeminWiki
(Различия между версиями)
SYSDBA (обсуждение | вклад) (Новая страница: « Category:Постановка») |
SYSDBA (обсуждение | вклад) |
||
| Строка 1: | Строка 1: | ||
| + | Описанная ниже схема не отменяет действующего механизма, когда на мобильном устройстве прописан адрес с портом, а на файрволле предприятия настроен статический роут на внутренний компьютер. | ||
| + | Терминология: | ||
| + | * '''Сервер предприятия''' -- gedemin.exe в качестве веб-сервера, обслуживающий запросы мобильных приложений. | ||
| + | * '''Хаб''' -- gedemin.exe в качестве веб-сервера, где регистрируются '''серверы предприятий''' и куда мобильные приложения обращаются за адресами серверов предприятий. | ||
| + | * '''Мобильное приложение''' -- android приложение, которое обращается к '''серверу предприятия''' за данными. Адрес '''сервера предприятия''' '''мобильное приложение''' узнает, послав запрос на '''хаб'''. | ||
| + | |||
| + | |||
| + | Один из серверов выступает в роли хаба, где регистрируются сервера предприятий и куда обращаются мобильные приложения за адресами. Сервера предприятий мы прописываем в таблице [[GD_WEBHUB]]: | ||
| + | |||
| + | ... | ||
| + | allowedip -- список допустимых адресов. Если пустой, то мы разрешаем | ||
| + | регистрацию сервера предприятия с любым внешним | ||
| + | адресом. | ||
| + | aliases -- список алиасов, обслуживаемых данным сервером предприятия. | ||
| + | если пустой, то мобильные приложения смогут подключиться | ||
| + | только по адресу. | ||
| + | companyruid -- РУИД организации. | ||
| + | computerid -- id компьютера сервера. | ||
| + | adminemail -- адреса электронной почты для уведомления о недоступности | ||
| + | сервера. | ||
| + | lastactive -- дата и время последней регистрации сервера на хабе. | ||
| + | ... | ||
| + | |||
| + | |||
| + | Сервер предприятия активируется через файл gedemin.ini: | ||
| + | |||
| + | [WEB SERVER] | ||
| + | Active = 1 | ||
| + | Bindings = можно не указывать, тогда сервер привяжется к | ||
| + | локальному адресу. | ||
| + | Register = 1 -- флаг указывает, что веб сервер должен | ||
| + | зарегистрироваться на хабе. По умолчанию равен 0. | ||
| + | RegisterPeriod = 580 -- период в секундах, через который сервер | ||
| + | обновляет информацию о себе на хабе. По умолчанию | ||
| + | 580 сек, так как есть информация, что на некоторых | ||
| + | свитчах и файрволах используется 10-ти минутный | ||
| + | интервал времени, в течение которого сохраняется | ||
| + | информация о соответствии внутреннего адреса и | ||
| + | внешнего порта. | ||
| + | |||
| + | Сценарий регистрации: | ||
| + | |||
| + | # запускается веб сервер предприятия | ||
| + | # если параметры из gedemin.ini указывают на необходимость регистрации на хабе, то шлется запрос на зашитый в экзешник адрес (например, gs.selfip.biz:47002/web_register) | ||
| + | # на хаб передается id компьютера и ruid организации. | ||
| + | # если хаб не доступен, то сервер переходит в неактивное состояние. на экран и в лог выдается сообщение о полученной ошибке. | ||
| + | # хаб сверяет переданный ид компьютера и руид организации с информацией в GD_WEBHUB. Если сервер не прописан то возвращается соответствующий код. Сервер предприятия выдает на экран и в лог сообщение. | ||
| + | # хаб регистрирует | ||
[[Category:Постановка]] | [[Category:Постановка]] | ||
Версия 13:19, 7 февраля 2016
Описанная ниже схема не отменяет действующего механизма, когда на мобильном устройстве прописан адрес с портом, а на файрволле предприятия настроен статический роут на внутренний компьютер.
Терминология:
- Сервер предприятия -- gedemin.exe в качестве веб-сервера, обслуживающий запросы мобильных приложений.
- Хаб -- gedemin.exe в качестве веб-сервера, где регистрируются серверы предприятий и куда мобильные приложения обращаются за адресами серверов предприятий.
- Мобильное приложение -- android приложение, которое обращается к серверу предприятия за данными. Адрес сервера предприятия мобильное приложение узнает, послав запрос на хаб.
Один из серверов выступает в роли хаба, где регистрируются сервера предприятий и куда обращаются мобильные приложения за адресами. Сервера предприятий мы прописываем в таблице GD_WEBHUB:
...
allowedip -- список допустимых адресов. Если пустой, то мы разрешаем
регистрацию сервера предприятия с любым внешним
адресом.
aliases -- список алиасов, обслуживаемых данным сервером предприятия.
если пустой, то мобильные приложения смогут подключиться
только по адресу.
companyruid -- РУИД организации.
computerid -- id компьютера сервера.
adminemail -- адреса электронной почты для уведомления о недоступности
сервера.
lastactive -- дата и время последней регистрации сервера на хабе.
...
Сервер предприятия активируется через файл gedemin.ini:
[WEB SERVER]
Active = 1
Bindings = можно не указывать, тогда сервер привяжется к
локальному адресу.
Register = 1 -- флаг указывает, что веб сервер должен
зарегистрироваться на хабе. По умолчанию равен 0.
RegisterPeriod = 580 -- период в секундах, через который сервер
обновляет информацию о себе на хабе. По умолчанию
580 сек, так как есть информация, что на некоторых
свитчах и файрволах используется 10-ти минутный
интервал времени, в течение которого сохраняется
информация о соответствии внутреннего адреса и
внешнего порта.
Сценарий регистрации:
- запускается веб сервер предприятия
- если параметры из gedemin.ini указывают на необходимость регистрации на хабе, то шлется запрос на зашитый в экзешник адрес (например, gs.selfip.biz:47002/web_register)
- на хаб передается id компьютера и ruid организации.
- если хаб не доступен, то сервер переходит в неактивное состояние. на экран и в лог выдается сообщение о полученной ошибке.
- хаб сверяет переданный ид компьютера и руид организации с информацией в GD_WEBHUB. Если сервер не прописан то возвращается соответствующий код. Сервер предприятия выдает на экран и в лог сообщение.
- хаб регистрирует