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 voidcloseConnectionsWithIntersectionIP(InetServ inetServ, InetSessionDao inetSessionDao, Directory<InetServType> servTypeDirectory, InetSessionService inetSessionService, int moduleId)При назначении адреса не учитывается, что адрес может быть сейчас занят в динамической выдаче.static voidflowStaticSubnet(java.util.List<IpNet> result, IpNet net)добавляем статическую подсеть в обсчет Netflowstatic byte[]getEndAddressFromParent(InetServ parent, Preferences servTypeConfig)static byte[]getStartAddressFromParent(InetServ parent, Preferences servTypeConfig)static voidsetDelegatedIPv6Prefix(RadiusListenerWorker<?> radiusListenerWorker, RadiusPacket response, int ipResourceId, byte[] prefix, short prefixLength)Для ipv6 проставляем в response атрибут Delegated_IPv6_Prefixstatic voidsetFramedIPAddress(RadiusListenerWorker<?> radiusListenerWorker, RadiusPacket response, int ipResourceId, byte[] ipAddress)Установка ip-адреса в response в атрибуты Framed_IP_Address/Framed_IPv6_Prefix.static voidsetFramedIPv6Prefix(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-ресурса в отдельном поле
-