Class InetServIpUtils

java.lang.Object
ru.bitel.bgbilling.modules.inet.server.ip.InetServIpUtils

public class InetServIpUtils
extends java.lang.Object
  • Constructor Details

    • InetServIpUtils

      public InetServIpUtils()
  • Method Details

    • getStartAddressFromParent

      public static byte[] getStartAddressFromParent​(InetServ parent, Preferences servTypeConfig)
    • getEndAddressFromParent

      public static byte[] getEndAddressFromParent​(InetServ parent, Preferences servTypeConfig)
    • closeConnectionsWithIntersectionIP

      public static void closeConnectionsWithIntersectionIP​(InetServ inetServ, InetSessionDao inetSessionDao, Directory<InetServType> servTypeDirectory, InetSessionService inetSessionService, int moduleId) throws ru.bitel.bgbilling.common.BGException
      При назначении адреса не учитывается, что адрес может быть сейчас занят в динамической выдаче. Здесь производится поиск и закрытие таких сессий. TODO: возможно переделать на DAO для оптимизации, или при специальном флаге - не искать вообще (например, для конвертации)
      Parameters:
      inetServ -
      Throws:
      ru.bitel.bgbilling.common.BGException
    • flowStaticSubnet

      public static void flowStaticSubnet​(java.util.List<IpNet> result, IpNet net)
      добавляем статическую подсеть в обсчет Netflow
      Parameters:
      inetServRuntime -
      result -
      addressFrom -
      addressTo -
    • setFramedIPAddress

      public static void setFramedIPAddress​(RadiusListenerWorker<?> radiusListenerWorker, RadiusPacket response, int ipResourceId, byte[] ipAddress)
      Установка ip-адреса в response в атрибуты Framed_IP_Address/Framed_IPv6_Prefix.
      Parameters:
      radiusListenerWorker - текущий обработчик радиус-запроса
      response - ответ на запрос
      ipResourceId - id ip-ресурса, из которого взяли ip
      ipAddress - адрес
    • setFramedIPv6Prefix

      public static void setFramedIPv6Prefix​(RadiusListenerWorker<?> radiusListenerWorker, RadiusPacket response, int ipResourceId, byte[] prefix, short prefixLength)
      Для ipv6 проставляем в response атрибут Framed_IPv6_Prefix
      Parameters:
      radiusListenerWorker - текущий обработчик радиус-запроса
      response - ответ на запрос
      ipResourceId - id ip-ресурса, из которого взяли ip
      prefix - префикс ipv6-ресурса, отвечающий за адрес сети
      prefixLength - длина ipv6-префикса. Длина префикса настраивается в редакторе ip-ресурса в отдельном поле
    • setDelegatedIPv6Prefix

      public static void setDelegatedIPv6Prefix​(RadiusListenerWorker<?> radiusListenerWorker, RadiusPacket response, int ipResourceId, byte[] prefix, short prefixLength)
      Для ipv6 проставляем в response атрибут Delegated_IPv6_Prefix
      Parameters:
      radiusListenerWorker - текущий обработчик радиус-запроса
      response - ответ на запрос
      ipResourceId - id ip-ресурса, из которого взяли ip
      prefix - префикс ipv6-ресурса, отвечающий за адрес сети
      prefixLength - длина ipv6-префикса. Длина префикса настраивается в редакторе ip-ресурса в отдельном поле