zoukankan      html  css  js  c++  java
  • zMPLS的安装与配置

    1、zmpls的安装

    1.1安装环境

    ubuntu 12.04 kernel 2.6.35 (对原来的内核进行了替换)

     1.2 下载链接

    文件zMPLS-0.95-alpha.tar.gz的下载地址为:

    http://sourceforge.net/projects/zmpls/files/latest/download?source=files

     1.3安装过程

    $ cd zMPLS-0.95-alpha/
    $ ./configure
    $
    sudo make
    $ sudo make install

    1.4 清理配置信息

    $ sudo make clean
    
    $ sudo make distclean

     

    2、安装过程中遇到的问题及解决方案

    2.1 问题1

    提示错误:sockunion.c 244:22 error struct sockaddr_in6 has no member named sin_port

    解决方案:

             打开文件lib/sockunion.c文件,定位到244行,将sin_port改成sin6_port

    2.1 问题2

    提示错误:stream.c 383:34  error: request for member 'ipv6_host'  in something not a structure or union.

         Stream.c 391:34 error: request for member 'ipv6_prefix' in something not a structure or union

         …..........392—393

    解决方案:

             打开文件lib/stream.c文件,然后分别进行如下修改:

             1)383行: fec_rule.ipv6_host → fec_rule->rule.ipv6_host

             2)391行的fec_rule.ipv6_prefix → fec_rule->rule.ipv6_prefix

             3)392-393行的ipv6_prefix → prefix_ipv6

    解决此问题之后,清除配置信息重新配置编译,接着可能会出现下面问题

    2.3 问题3

    提示错误:rtadv.c: 123:18: error: dereferencing pointer to incomplete type

             ….......124, 130 …

             rtadv.c: 149:49: error: invalid application of 'sizeof' to incomplete type 'struct in6_pktinfo'

             rtadv.c: 268:15: error: dereferencing pointer to incomplete type

    解决方案:

             在lib/zebra.h中第103行添加如下代码:

    #ifdef GNU_LINUX
    
    #define __USE_GNU
    
    #endif

     

    2.4 问题4

    提示错误:rsvp_packet.c: 644:15: error: label at end of compound statement

    解决方案:

             打开文件rsvpd/rsvp_packet.c文件。定位到644行,在每个缺少break的case后面加上一个break语句,并且在最后加上default: break;

    case: RSVP_CALSS_RESV_CONF:
    
             break;
    
    case: RSVP_CLASS_SCOPE:
    
             break;
    
    case: RSVP_CLASS_POLICY_DATA:
    
             break;
    
    case: RSVP_CLASS_STYLE:
    
             break;
    
    default:
    
             break;

     

    2.5 问题5

    提示错误:ospfd.h 510:23: error: array type has incomplete element type

         ospfd.h 511:23: error: array type has incomplete element type

         ….............

         ospfd.h 515:23: error: array type has incomplete element type

    解决方案:

             打开文件ospfd/ospfd.h文件,加上头文件:#include “log.h”。

    2.6 问题6

    提示错误:在make install时,出现下面错误:

             /bin/bash: -c: line 7: syntax error: unexpected end of file

    解决方案:

             打开ldpd/Makefile文件,定位到文件的一段代码,将此段代码替换成文件zmpls/Makefile文件的最后一段代码。保持退出即可。

             即使用如下代码替换掉ldpd/Makefile文件的最后的与此一样的代码

    install-sysconfDATA: $(sysconf_DATA)
    
             @$(NORMAL_INSTALL)
    
             $(mkinstalldirs) $(DESTDIR)$(sysconfdir)
    
             @list='$(sysconf_DATA)'; for p in $$list; do 
    
               if test -f $(srcdir)/$$p; then 
    
                 echo " $(INSTALL_SDATA) $(srcdir)/$$p $(DESTDIR)$(sysconfdir)/$$p"; 
    
                 $(INSTALL_SDATA) $(srcdir)/$$p $(DESTDIR)$(sysconfdir)/$$p; 
    
               else if test -f $$p; then 
    
                 echo " $(INSTALL_SDATA) $$p $(DESTDIR)$(sysconfdir)/$$p"; 
    
                 $(INSTALL_SDATA) $$p $(DESTDIR)$(sysconfdir)/$$p; 
    
               fi; fi; 
    
             done

    注意:Makefile文件在make的时候自动生成的,所以在修改Makefile文件之后不要进行make。

    3、ZMPLS的配置

    首先获得配置文件所在的目录,默认放置在目录/usr/local/etc/目录下面。还有一些文件放置在其相应的目录下面,比如zebra.conf文件放置在zmpls/目录下,ldpd.conf放置在ldpd/目录下,rsvpd.conf放置在rsvpd/目录下。

    在目录/usr/local/etc/目录下面的一些.conf.sample文件或者.conf文件,需要的时候将.conf.sample文件拷贝成.conf文件。

    3.1zmpls usage

    Start zmplsd as :

    $ zmpls -f /tmp/zebra.conf

    Connect to zmpls as :

    $ telnet 127.0.0.1 2601

    default password: zmpls

    3.2ldpd usage

    Start ldpd as :

    $ ldpd -f  /tmp/ldpd.conf

    Connect to  ldpd as :

    $ telnet 127.0.0.1 2610

    default password: zmpls

    3.3rsvpd usage

    Start rsvpd as :

    $ rsvpd -f /tmp/rsvpd.conf

    Connect to rsvpd as :

    $ telnet 127.0.0.1 2611

    default password: zebra

  • 相关阅读:
    Sqli-labs less 36
    python3操作mysql数据库增删改查
    python3连接MySQL数据库
    修改(python) mysql 数据库 使其可以支持插入中文
    十九 Django框架,发送邮件
    十八 Django框架,生成二维码
    十七 Django框架,文件上传
    十六 Django框架,信号
    十五 Django框架,缓存
    十四 Django框架,中间件
  • 原文地址:https://www.cnblogs.com/liuwu265/p/4229698.html
Copyright © 2011-2022 走看看