Class InetServIpUtils
java.lang.Object
ru.bitel.bgbilling.modules.inet.server.ip.InetServIpUtils
public class InetServIpUtils
extends java.lang.Object
-
Constructor Summary
Constructors Constructor Description InetServIpUtils()
-
Method Summary
Modifier and Type Method Description static void
closeConnectionsWithIntersectionIP(InetServ inetServ, InetSessionDao inetSessionDao, Directory<InetServType> servTypeDirectory, InetSessionService inetSessionService, int moduleId)
При назначении адреса не учитывается, что адрес может быть сейчас занят в динамической выдаче.static void
flowStaticSubnet(java.util.List<IpNet> result, IpNet net)
добавляем статическую подсеть в обсчет Netflowstatic byte[]
getEndAddressFromParent(InetServ parent, Preferences servTypeConfig)
static byte[]
getStartAddressFromParent(InetServ parent, Preferences servTypeConfig)
static void
setDelegatedIPv6Prefix(RadiusListenerWorker<?> radiusListenerWorker, RadiusPacket response, int ipResourceId, byte[] prefix, short prefixLength)
Для ipv6 проставляем в response атрибут Delegated_IPv6_Prefixstatic void
setFramedIPAddress(RadiusListenerWorker<?> radiusListenerWorker, RadiusPacket response, int ipResourceId, byte[] ipAddress)
Установка ip-адреса в response в атрибуты Framed_IP_Address/Framed_IPv6_Prefix.static void
setFramedIPv6Prefix(RadiusListenerWorker<?> radiusListenerWorker, RadiusPacket response, int ipResourceId, byte[] prefix, short prefixLength)
Для ipv6 проставляем в response атрибут Framed_IPv6_PrefixMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
InetServIpUtils
public InetServIpUtils()
-
-
Method Details
-
getStartAddressFromParent
-
getEndAddressFromParent
-
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
добавляем статическую подсеть в обсчет 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-ресурса, из которого взяли ipipAddress
- адрес
-
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-ресурса, из которого взяли ipprefix
- префикс 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-ресурса, из которого взяли ipprefix
- префикс ipv6-ресурса, отвечающий за адрес сетиprefixLength
- длина ipv6-префикса. Длина префикса настраивается в редакторе ip-ресурса в отдельном поле
-