NAT traversal (постановка)

Материал из GedeminWiki
(Различия между версиями)
Перейти к: навигация, поиск
(Новая страница: « Category:Постановка»)
 
Строка 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-ти минутный
                   интервал времени, в течение которого сохраняется
                   информация о соответствии внутреннего адреса и
                   внешнего порта. 

Сценарий регистрации:

  1. запускается веб сервер предприятия
  2. если параметры из gedemin.ini указывают на необходимость регистрации на хабе, то шлется запрос на зашитый в экзешник адрес (например, gs.selfip.biz:47002/web_register)
  3. на хаб передается id компьютера и ruid организации.
  4. если хаб не доступен, то сервер переходит в неактивное состояние. на экран и в лог выдается сообщение о полученной ошибке.
  5. хаб сверяет переданный ид компьютера и руид организации с информацией в GD_WEBHUB. Если сервер не прописан то возвращается соответствующий код. Сервер предприятия выдает на экран и в лог сообщение.
  6. хаб регистрирует
Персональные инструменты
Пространства имён

Варианты
Действия
Навигация
Инструменты