BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 21 май 2024, 02:57

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 45 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: Manad и DHCP совместная работа
СообщениеДобавлено: 09 авг 2010, 21:10 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
tee писал(а):
столкнулся с проблемой когда BGDHCP в 5.1 некорректно отрабатывает ситуацию,
есть несколько разных шлюзов с одинаковым GIADDR
это физически одно устройство но, должны выдаваться разные настройки в зависимости от номера порта
например реальные и серые IP, поэтому в биллинге создано
два шлюза с разными настройками, при этом физический DHCP Relay один

При добавлении второго шлюза (#2) с GIADDR совпадающим с имеющимся (#1)
работает только вновь добавленный, при получении IP со шлюза #2
в логе видно информацию о том что соответствующая запись в базе DHCP найдена, но она не выдается
Код:
DEBUG  04.08.2010 22:49:55,126 pool-1-thread-3 DHCP_REQUEST or  DHCP_DISCOVER
DEBUG  04.08.2010 22:49:55,126 pool-1-thread-3 request.giaddr =xx.xx.xx.xx
DEBUG  04.08.2010 22:49:55,126 pool-1-thread-3 gateId = 11
DEBUG  04.08.2010 22:49:55,126 pool-1-thread-3 port=1
DEBUG  04.08.2010 22:49:59,126 pool-1-thread-3 processing request
DEBUG  04.08.2010 22:49:59,127 pool-1-thread-3 OP_BOOT_REQUEST
DEBUG  04.08.2010 22:49:59,127 pool-1-thread-3 agent information  found!
DEBUG  04.08.2010 22:49:59,127 pool-1-thread-3 DHCP_REQUEST or  DHCP_DISCOVER
DEBUG  04.08.2010 22:49:59,127 pool-1-thread-3 request.giaddr = xx.xx.xx.xx
DEBUG  04.08.2010 22:49:59,127 pool-1-thread-3 gateId = 11
DEBUG  04.08.2010 22:49:59,127 pool-1-thread-3 port=1



это ну будет рабаотать . в текущйи момент каждый шлюз должен иметь уникальный GIADDR. к этому адресу привязываются настройки портов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Manad и DHCP совместная работа
СообщениеДобавлено: 10 авг 2010, 16:02 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
skyb писал(а):
stark писал(а):
skyb писал(а):
Когда на договор вешаеш шлюз, потом переходиш на вкладку порты, там уже открыто диалоговое меню с выбором портов, в котором конечно же нет шлюза.


да точно, исправим

Как идут работы в этом направлении?? :)


исправлено . обновление выложено


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Manad и DHCP совместная работа
СообщениеДобавлено: 25 авг 2010, 01:44 
Не в сети

Зарегистрирован: 17 окт 2008, 00:19
Сообщения: 22
Карма: 0
tee как успехи?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Manad и DHCP совместная работа
СообщениеДобавлено: 25 авг 2010, 17:15 
Не в сети

Зарегистрирован: 17 апр 2009, 15:21
Сообщения: 68
Карма: 0
Zoro писал(а):
tee как успехи?

В целом все работает так как хотел.
Есть пара мелких проблем, но надеюсь решу


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Manad и DHCP совместная работа
СообщениеДобавлено: 06 сен 2010, 17:51 
Не в сети

Зарегистрирован: 17 апр 2009, 15:21
Сообщения: 68
Карма: 0
Схема DHCP+Manad

Используется BGDHCP и свичи с функционалом DHCP Opt.82 + L3 DHCP relay в управляющем VLAN,
поддерживает 1IP на порт. Дочерним шлюзом к выступает шлюз который выполняет 2 задачи,
1) это редактор IP адреса и порта, в нем настройки релея для DHCP
2) он передает данные Linux шлюзу с Manad, где происходит шейпинг


DHCP работающий с дочерним манадом
На основе этого скрипта из вики

Конфиг для типа шлюза
Код:
user_rule.editor.class=bitel.billing.module.services.ipn.editor.EmptyContractRuleEditor
gate_manager.class=bitel.billing.server.ipn.DHCPGateWorker
use.script=1
gate.cache.script=1


Скрипт для типа шлюза
Код:
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.Socket;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.regex.Pattern;
 
import org.apache.xml.serializer.ToXMLStream;
import org.xml.sax.SAXException;
 
import ru.bitel.bgbilling.common.DefaultSetup;

//GatePortManager
import ru.bitel.bgbilling.modules.ipn.server.bean.GatePortManager;

import bitel.billing.common.module.ipn.IPNContractStatus;
import bitel.billing.server.ipn.bean.Gate;
import bitel.billing.server.ipn.UserPortStatus;
import bitel.billing.server.ipn.UserStatus;

// AddressRangeManager
import bitel.billing.server.ipn.bean.AddressRangeManager;
import bitel.billing.server.ipn.bean.AddressRange;

//void parentSync(..)
import bitel.billing.server.ipn.GateWorker;

import bitel.billing.server.ipn.dlink.UserPortStatus;
import bitel.billing.server.ipn.dlink.UserPortStatus.UserPortStatusParser;
import bitel.billing.server.util.Utils;
import bitel.billing.common.IPUtils;


void parentSync( Gate child, GateWorker childWorker )
{

   log.debug( "parentSync Manad-BGDHCP" );
 
   String host = gate.getHost();
   int port = gate.getPort();
   int gid = gate.getId();
   
   String childhost = child.getHost();
   int childport = child.getPort();
   int childgid = child.getId();


 
   if( Utils.isEmptyString( host ) || port <= 0 )
   {
      log.error( "Can't get IP/port for BGDHCP for this gate! " );
      gateErrors.append( "Не указан адрес сервера dhcp для данного шлюза!" );
      return;
   }
 
   if( log.isDebugEnabled() )
      log.debug( gid + " gate: " + host + ":" + port );

   if( log.isDebugEnabled() )
      log.debug( childgid + " childgate: " + childhost + ":" + childport );
 
 
   Socket socket = null;
   try
   {
      socket = new Socket( host, port );
      InputStreamReader isr = new InputStreamReader( socket.getInputStream() );
      BufferedReader in = new BufferedReader( isr );
 
      ToXMLStream stream = new ToXMLStream();
      stream.setOutputStream(  socket.getOutputStream() );
 
      stream.setEncoding( "UTF-8" );
      stream.startDocument();
 
      stream.startElement( "sync" );
      stream.addAttribute( "type", "dhcp" );
 
      Gate gate = child;
      syncGate( gate, stream );
      
      stream.startElement( "list" );
      stream.addAttribute( "gateId", String.valueOf( gate.getId() ) );
      stream.endElement( "list" );
      stream.flushPending();
      stream.getWriter().flush();
 
      Map portStatusMap = new HashMap();
      String line = in.readLine();
        Pattern TabPattern=Pattern.compile("[\t]");

      while( line != null && !"".equals( line ) )
      {
         String[] p = TabPattern.split( line );
         if( p.length > 1 )
              {
            UserPortStatus st = new UserPortStatus();
            st.ipAddr = p[1];
            st.port = Utils.parseIntString( p[0], -1 );
            portStatusMap.put( st.port, st );
         }
         line = in.readLine();
      }

      String gateId = String.valueOf( gate.getId() );
         
      AddressRangeManager IPManager = new AddressRangeManager(con, mid);
      GatePortManager PortManager = new GatePortManager( con, mid );

               
      for( UserStatus status : statusList )
      {
         List IPRange=IPManager.getContractAddressRange(status.contractId);                  
         AddressRange IP1 = null;
         numIP=0;
         // IP1.getAddr1() - long
         // TODO Utils -> IPUtils
         for( AddressRange IP : IPRange )
         {
            log.debug("cid="+status.contractId + " IP="+IPUtils.convertLongIpToString(IP.getAddr1())+ "-" +IPUtils.convertLongIpToString(IP.getAddr2()));
            if (IP.getAddr1()==IP.getAddr2())
            {
               IP1=IP;
               numIP++;   
            }
         }
         if ( (IP1 == null) || (numIP > 1) )
         {
               log.error("cid="+ status.contractId+" IP configuration Eror" );
         }

         Ports = PortManager.getGatePorts( status.contractId, gate.getId() );

         Port=null;
         for( Port : Ports )
         {
            log.debug("cid="+ status.contractId+" port=" +String.valueOf(Port) );
         }
         UserPortStatus s = portStatusMap.remove( Port );

            IPhex= Utils.bytesToString( Utils.convertIntToBytes ( (int)IP1.getAddr1() ) );     
         log.debug("cid="+ status.contractId + " IPhex=" + IPhex);

         if(  (s == null || !s.ipAddr.equals(IPhex )) && status.status != IPNContractStatus.STATUS_REMOVED )
         {
            log.debug("cid="+ status.contractId+" adding IP to DHCP");
            stream.startElement( "port" );
            stream.addAttribute( "gateId", gateId );
            stream.addAttribute( "id", String.valueOf( Port ) );
            stream.addAttribute( "ip", IPhex );
            stream.endElement( "port" );
         }

         //удаляем в одном месте
         if( s != null && status.status == IPNContractStatus.STATUS_REMOVED )
         {
            log.debug("cid="+ status.contractId+" removing IP from DHCP");
            stream.startElement( "removePort" );
            stream.addAttribute( "gateId", gateId );
            stream.addAttribute( "id", String.valueOf(Port) );
            stream.addAttribute( "ip", IPhex );
            stream.endElement( "removePort" );
         }

      } // for
 
      stream.flushPending();
      stream.getWriter().flush();
      stream.endElement( "sync" );
      stream.endDocument();
      stream.getWriter().flush();
   } // try
 
   finally
   {
      if( socket != null )
      {
         try
         {
            socket.close();
         }
         catch (Exception e)
         {}
      }
   }
}
 
protected void syncGates( Gate gate, ToXMLStream stream )
{
   try
   {
      if( gate != null )
      {
         stream.startElement( "gate" );
         stream.addAttribute( "id", String.valueOf( gate.getId() ) );
         stream.addAttribute( "host", gate.getHost() );
         DefaultSetup gateSetup = new DefaultSetup( gate.getConfig(), "\n" );
         Map params = gateSetup.getHashValuesWithPrefix( "dhcp." );
         for( Entry e : params.entrySet() )
         {
            stream.startElement( "param" );
            stream.addAttribute( "id", "dhcp." + e.getKey() );
            stream.addAttribute( "value", e.getValue() );
            stream.endElement( "param" );
         }
 
         if( gate.getChildren() != null )
            for( Gate g : gate.getChildren() )
            {
               syncGates( g, stream );
            }
 
         stream.endElement( "gate" );
      }
   }
   catch( SAXException e )
   {
      e.printStackTrace();
   }
}
 
protected void syncGate( Gate gate, ToXMLStream stream )
{
   try
   {
      if( gate != null )
      {
         List gateList = new ArrayList();
         gateList.add( gate );
         Gate g = gate;
         while( g != null )
         {
            gateList.add( g );
            g = g.getParent();
         }
 
         HashMap params = new HashMap();
         for( int i = gateList.size() - 1; i >= 0; i-- )
         {
            DefaultSetup gateSetup = new DefaultSetup( gateList.get( i ).getConfig(), "\n" );
            Map p = gateSetup.getHashValuesWithPrefix( "dhcp." );
            for( Entry e : p.entrySet() )
            {
               params.put( e.getKey(), e.getValue() );
            }
         }
         log.debug("sync gate start");
         stream.startElement( "gate" );
         log.debug("id="+String.valueOf( gate.getId() ) );
         stream.addAttribute( "id", String.valueOf( gate.getId() ) );
         log.debug("host="+gate.getHost() );
         stream.addAttribute( "host", gate.getHost() );

         for( Entry e : params.entrySet() )
         {
            stream.startElement( "param" );
            log.debug("dhcp."+e.getKey());
            stream.addAttribute( "id", "dhcp." + e.getKey() );
            log.debug("value="+e.getValue());
            stream.addAttribute( "value", e.getValue() );
            stream.endElement( "param" );
         }
         stream.endElement( "gate" );
         log.debug("sync gate end");
      }
   }
   catch( SAXException e )
   {
      e.printStackTrace();
   }
}


Конфиг шлюза, хост=BGDHCP порт=BGDHCP у меня 1868
Код:
processor.class=bitel.billing.server.ext.dhcp.DHCPRelayProcessor
#Номер субопции в Option 82, в которой  хранится порт клиента(нумерация с 1)
dhcp.82.key.option.code=1
#Позиция(номер байта) внутри субопции, в которой  хранится порт клиента(нумерация с 0).
dhcp.82.key.position=6


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Manad и DHCP совместная работа
СообщениеДобавлено: 06 сен 2010, 18:07 
Не в сети

Зарегистрирован: 17 апр 2009, 15:21
Сообщения: 68
Карма: 0
Основан на этом скрипте Реализация стандартного шлюза Manad на BeanShell

Шлюз манад+ редактор свича дочерний к тому что выше
типы правил для него используют скорости
dnspeed= к абоненту
upspeed= от абонента

Входящий от абонента трафик шейпится на ifb интерфейсе из за NAT



Конфигурация типа шлюза
Код:
user_rule.editor.class=bitel.billing.module.services.ipn.editor.ManadContractRuleEditor
gate_manager.class=bitel.billing.server.ipn.ManadGateWorker
use.script=1
gate.cache.script=1


Команды
Код:
[DEFAULT]

[OPEN]

<LOOP>
/sbin/iptables -A FORWARD -t filter -s {A} -j ACCEPT -m comment  --comment cid={CID}
/sbin/iptables -A FORWARD -t filter -d {A} -j ACCEPT -m comment  --comment cid={CID}
</LOOP>

/sbin/tc class add dev eth0 parent 1:0 classid 1:[N1] htb rate ${dnspeed}kbit burst 4k prio 1
/sbin/tc qdisc add dev eth0 parent 1:[N1] handle [N1]: sfq perturb 10 quantum 1500

/sbin/tc class add dev ifb0 parent 1:0 classid 1:[N1] htb rate ${upspeed}kbit burst 4k prio 1
/sbin/tc qdisc add dev ifb0 parent 1:[N1] handle [N1]: sfq perturb 10 quantum 1500


<LOOP>
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio [N1] u32 match ip dst {A}  flowid 1:[N1]
/sbin/tc filter add dev ifb0 parent 1:0 protocol ip prio [N1] u32 match ip src {A}  flowid 1:[N1]
</LOOP>

<LOOP_NET>
/sbin/iptables -A FORWARD -t filter -s {NET}  -j ACCEPT  -m comment  --comment cid={CID}
</LOOP_NET>

<LOOP_NET>
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio [N1] u32 match ip dst  {IP}/{MASK_BIT}  flowid 1:[N1]
/sbin/tc filter add dev ifb0 parent 1:0 protocol ip prio [N1] u32 match ip src  {IP}/{MASK_BIT}  flowid 1:[N1]
</LOOP_NET>


[/OPEN]

[CLOSE]

<LOOP>
/sbin/iptables -D FORWARD -t filter -s {A} -j ACCEPT -m comment  --comment cid={CID}
/sbin/iptables -D FORWARD -t filter -d {A} -j ACCEPT -m comment  --comment cid={CID}
</LOOP>

/sbin/tc filter del dev eth0 parent 1:0 protocol ip prio [N1]
/sbin/tc class del dev eth0 parent 1:0 classid 1:[N1]

/sbin/tc filter del dev ifb0 parent 1:0 protocol ip prio [N1]
/sbin/tc class del dev ifb0 parent 1:0 classid 1:[N1]


<LOOP_NET>
/sbin/iptables -D FORWARD -t filter -s {NET}  -j ACCEPT  -m comment  --comment cid={CID}
</LOOP_NET>

[/CLOSE]

[/DEFAULT]



Скрипт типа шлюза
Код:
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.Socket;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.regex.Pattern;

import bitel.billing.common.module.ipn.*;
import bitel.billing.server.ipn.bean.*;
import bitel.billing.server.util.DefaultServerSetup;
import ru.bitel.bgbilling.modules.ipn.server.bean.command.GateCommandUtil;


 
void doSync()
{

   log.debug( "doSync Manad-SW" );

   DefaultServerSetup gateSetup = new DefaultServerSetup( gate.getConfig(), "\r\n" );

   host = gateSetup.get( "manad.host","localhost");
    port = gateSetup.getInt( "manad.port",0 );

   gid = gate.getId();

 
   if ( log.isDebugEnabled() )
   {
       log.debug( gid + " gate: " + host + ":" + port );
   }
 
 
      socket = new Socket( host, port );
      out = new PrintWriter( socket.getOutputStream(), true );
      isr = new InputStreamReader( socket.getInputStream() );
      in = new BufferedReader( isr );
 
      out.println( "test" );
      kods = in.readLine();
 
                if ( log.isDebugEnabled() )
                {
                    log.debug( gid + " Test => " + kods + "\n" );
                }
 
      // список открытых договоров с шлюза
      gateRules = new HashSet( 5, 5 );
      st = new StringTokenizer( kods );
      while ( st.hasMoreTokens() )
      {
         gateRules.add( new Integer( st.nextToken() ) );
      }
 
      for( i = 0; i < statusList.size(); i++ )
      {
         status = statusList.get(i);
         cid = status.contractId;
 
         // флаг того то правило есть на шлюзе
         flag = false;
 
         // правило для этого договора есть на шлюзе
         if ( gateRules.contains( cid ) )
         {
            //   если правило есть а юзер заблокирован - удаляем правило
            if ( status.status > 0 )
            {
               rule = getRule( status, cid );
               command = "remove\t" + cid.intValue() + "\t" + rule;
               out.println( command );
                    if ( log.isDebugEnabled() )
                    {
                        log.debug( gid + " "+ "cid=" + cid +" "+ command );
                    }
                }                  
 
            flag = true;
            gateRules.remove( cid );
         }
 
         // правила нет, а юзер открыт
         if ( !flag &&    status.status == IPNContractStatus.STATUS_OPEN )
         {
            rule = getRule( status, cid );
 
            command = "add\t" + cid.intValue() + "\t" + rule;
            out.println( command );
 
             if ( log.isDebugEnabled() )
                {
                    log.debug( gid + " " + "cid=" + cid + " " + command );
                }
         }
      }
 
      in.close();
      out.close();
      socket.close();   
}
 
getRule( status, cid )
{
   rule = null;
 
   // пользовательское правило, без типа
   if( status.ruleType == null )
   {
      rule = status.rule.getRuleText();
   }
   // типизированное правило
   else
   {   
      rule = generateRule( status.rule.getRuleText(), status.gateType, status.ruleType, cid );         
   }
 
   rule = rule.replaceAll( "\r", "" );
   rule = rule.replaceAll( "\n", "|" );
 
   return rule;
}   
 
generateRule( addresses, gateType, ruleType, cid )
{
    ruleText = GateCommandUtil.getRule( gateType, ruleType );
   replacements =  new HashMap ();
      replacements.put( "\\{CID\\}",  String.valueOf( cid ) );
    return GateCommandUtil.generateRule( ruleText, addresses, replacements, ruleType );       
}


Конфиг шлюза, хост=GI адрес релея
Код:
manad.host=xx.xx.xx.xx
manad.port=4567
dhcp.router=yy.yy.yy.yy
dhcp.subnetMask=255.255.255.0
dhcp.dns=zz.zz.zz.zz, xx.yy.xx.yy
dhcp.ipAddressLeaseTime=1080000


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Manad и DHCP совместная работа
СообщениеДобавлено: 11 авг 2011, 21:43 
Не в сети

Зарегистрирован: 19 дек 2008, 17:46
Сообщения: 749
Карма: 10
Нужна помощь. Сделали все что сказал TEE. Но не работает. Сделали так.
Схема lдля примера такая DHCP Opt.82 + L3 DHCP relay(10.10.10.1)+ Billing 5.1 с BGDHCP(10.10.10.2)+Manad(10.10.10.3).
Настройка BGDHCP
data.properties
Код:
processor.class=bitel.billing.server.ext.dhcp.DHCPRelayProcessor
admin.port=1868
dhcp.thread.count=10
dhcp.data.save.delay=3600
dhcp.data.save.period=3600
dhcp.server.identifier=10.10.10.2

Создали два типа шлюзов как выше описал TEE (DHCP и MANAD). Далее в закладке Шлюзы создали шлюз c типом DHCP и адресом 10.10.10.2 портом 1868 и конфигурацией
Код:
processor.class=bitel.billing.server.ext.dhcp.DHCPRelayProcessor
#Номер субопции в Option 82, в которой  хранится порт клиента(нумерация с 1)
dhcp.82.key.option.code=1
#Позиция(номер байта) внутри субопции, в которой  хранится порт клиента(нумерация с 0).
dhcp.82.key.position=6

В нем создали дочерний шлюз с типом MANAD с адресом 10.10.10.1(L3 DHCP relay) и конфигурацией
Цитата:
manad.host=10.10.10.3
manad.port=4444
dhcp.router=10.10.10.1
dhcp.subnetMask=255.255.255.0
dhcp.dns=3.3.3.3, 4.4.4.4
dhcp.ipAddressLeaseTime=1080000

В итоге выходит ошибка при применении шлюза.
1. В лога BGDHCP dhcp.out
[Fatal Error] :1:409: XML document structures must start and end within the same entity.
2. При передергивании шлюза в логах биллинга
null : at Line: 144 : in file: inline evaluation of: ``import java.io.BufferedReader; import java.io.InputStreamReader; import java.net . . . '' : IP1 .getAddr1 ( )
3. В логах BGDHCP появляется
INFO 11.08.2011 21:52:05,078 main option_82=1
INFO 11.08.2011 21:52:05,079 main position_82=5
Хотя в закладке конфигурации мы указали значения 1 и 6

Что я делаю не так?. Все сделали как написано выше.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Manad и DHCP совместная работа
СообщениеДобавлено: 12 авг 2011, 16:00 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
madmax писал(а):
В итоге выходит ошибка при применении шлюза.
1. В лога BGDHCP dhcp.out
[Fatal Error] :1:409: XML document structures must start and end within the same entity.

Это шлюз dhcp недоделанный ,не рабочий .
Там идет
Код:
 Port=null;

И потом нигде не присваевается .Нужно хотя бы так сделать
Код:
 Port= Ports.get( 0 );

Причем желательно с проверками, вдруг порта вообще нет .
madmax писал(а):
2. При передергивании шлюза в логах биллинга
null : at Line: 144 : in file: inline evaluation of: ``import java.io.BufferedReader; import java.io.InputStreamReader; import java.net . . . '' : IP1 .getAddr1 ( )

Там ищется дипазон из одного ip причем он должен быть на доворе всего один. У вас скорее всего это условие не выполнено.

madmax писал(а):
3. В логах BGDHCP появляется
INFO 11.08.2011 21:52:05,078 main option_82=1
INFO 11.08.2011 21:52:05,079 main position_82=5
Хотя в закладке конфигурации мы указали значения 1 и 6

Что я делаю не так?. Все сделали как написано выше.

Эти значения указываются не конфигурации шлюза, а в конфигурации BGDHCP_IPN.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Manad и DHCP совместная работа
СообщениеДобавлено: 18 июн 2012, 13:49 
Не в сети

Зарегистрирован: 28 авг 2011, 21:48
Сообщения: 33
Карма: 0
Коллеги, подскажите, выложенная, уважаемым tee, конфигурация является рабочей? Или нужно под себя допиливать?
У нас стоит такая же задача - иметь авторизация по Opt.82, а скорость резать через manad.
Кто как решал подобный вопрос?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Manad и DHCP совместная работа
СообщениеДобавлено: 03 июл 2012, 23:45 
Не в сети

Зарегистрирован: 28 авг 2011, 21:48
Сообщения: 33
Карма: 0
Неужели никто не использует связку manad + dhcp в продакшне?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Manad и DHCP совместная работа
СообщениеДобавлено: 11 июл 2012, 00:53 
Не в сети

Зарегистрирован: 28 авг 2011, 21:48
Сообщения: 33
Карма: 0
Ку-ку! :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Manad и DHCP совместная работа
СообщениеДобавлено: 05 сен 2012, 18:13 
Не в сети

Зарегистрирован: 28 авг 2011, 21:48
Сообщения: 33
Карма: 0
ааауууу


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Manad и DHCP совместная работа
СообщениеДобавлено: 05 сен 2012, 18:17 
Не в сети

Зарегистрирован: 19 дек 2008, 17:46
Сообщения: 749
Карма: 10
В wiki для нового модуля Inet имеется манул как связать manad и dhcp. Но вот для IPN похоже этого никто не делал.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Manad и DHCP совместная работа
СообщениеДобавлено: 12 окт 2012, 13:57 
Не в сети
Клиент

Зарегистрирован: 04 июн 2009, 15:33
Сообщения: 268
Откуда: Москва
Карма: 8
А можно ссылку на статью в wiki, а то чёт не могу найти...

_________________
Клиент: вер. 7.1.102 / 20.04.2018 19:02:09
os: Windows 8.1; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_172
Сервер: вер. 7.1.970 / 20.04.2018 19:04:17
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_162


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Manad и DHCP совместная работа
СообщениеДобавлено: 12 окт 2012, 14:15 
Не в сети

Зарегистрирован: 19 дек 2008, 17:46
Сообщения: 749
Карма: 10
http://wiki.bgbilling.ru/index.php/%D0%98%D0%BD%D1%82%D0%B5%D0%B3%D1%80%D0%B0%D1%86%D0%B8%D1%8F_%D1%81_FreeBSD-%D1%88%D0%BB%D1%8E%D0%B7%D0%BE%D0%BC_%D0%BF%D0%BE_%D1%81%D1%85%D0%B5%D0%BC%D0%B5_VLAN-per-user_%D0%B8_%D0%B0%D0%B2%D1%82%D0%BE%D1%80%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B5%D0%B9_%D1%87%D0%B5%D1%80%D0%B5%D0%B7_DHCP_option_82


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 45 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot] и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.055s | 46 Queries | GZIP : On ]