在上文中将mpls编译进了linux内核,现在需要安装iprouter,安装过程如下:

1) 下载两个文件iproute2-2.6.39.tar.gz和iproute2-v2.6.39-mpls.patch。

iproute2-2.6.39.tar.gz下载地址:

http://pkgs.fedoraproject.org/repo/pkgs/iproute/iproute2-2.6.39.tar.gz/8a3b6bc77c2ecf752284aa4a6fc630a6/iproute2-2.6.39.tar.gz

iproute2-v2.6.39-mpls.patch下载地址:

http://ftp.jaist.ac.jp/pub/sourceforge/m/project/mp/mpls-linux/mpls-linux/Patches/iproute2-v2.6.39-mpls.patch

2)将iprouter解压到/usr/src/linux-2.6.35目录下,同时将iproute2-v2.6.39-mpls.patch也拷贝到该目录下。

  1. $ sudo cp iproute2-2.6..tar.gz /usr/src/linux-2.6.
  2.  
  3. $ sudo cp iproute2-v2.6.39-mpls.patch /usr/src/linux-2.6.
  4.  
  5. $ cd /usr/src/linux-2.6.
  6.  
  7. $ sudo tar zxf iproute2-2.6..tar.gz

3)将patch文件打进iprouter中

  1. # cd /usr/src/linux-2.6./iprouter2-2.6.
  2.  
  3. # patch–p1 < ../iproute2-v2.6.39-mpls.patch

4)对iprouter进行编译

  1. $ cd /usr/src/linux-2.6./iprouter2-2.6.
  2.  
  3. $ sudo ./configure

///***********此过程可能出现的问题*********

Problem:iptables modules directory: not found!

Solution: 将configure文件中的以下部分:

then

Ehco“using iptables”

TABLES=”iptables”       -------------->将此处的iptables改成xtables

Else

TABLES=”xtables”   -------------->将此处的xtables改成iptables(此处也可以不改)

****************************///

  1. $ sudo make

///*********可能出现的问题***********

在执行此命令之前需要先安装bison,flex。

  1. sudo apt-get install bison
  2. sudo apt-get install flex

Problem: fatal error: db_185.h: no such file or directory

Solution:

安装db-4.6.18.tar.gz,下载链接:

http://pkgs.fedoraproject.org/repo/pkgs/pam/db-4.6.18.tar.gz/95768bd92fd48951a427fbab37b9088f/db-4.6.18.tar.gz

下载完成后解压安装,其过程如下:

  1. $ tar -zxf db-4.6..tar.gz
  2. $ cd db-4.6.18
  3. $ cd build_unix
  4. $ sudo ../dist/configure --prefix=$INSTALLPATH --enable-compat185
  5. $ sudo make
  6. $ sudo make install

查找文件:

  1. $ sudoupdated //在查找文件之前先手动更新索引
  2. $ locate db_185.h //查找db_185.h文件

Problem:error: db_185.h: No such file or directory

Solution:

编译MakeFile文件,然后找到:

#Path to db_185.h include

DBM_INCLUDE:={ROOTDIR}/usr/include

//将此路径进行修改,改成db_185.h所在的目录,db_185.h所在的目录可以使用locate定位,假如db_185.h的所在位置为:/usr/src/db-4.6.18/build_unix/db_185.h,则这时将以上代码改为:

DBM_INCLUDE:=/usr/src/db-4.6.18/build_unix/

****************************///

  1. $ sudo make install

最后插入完成,现在可以测试一下安装的mpls是否成功,可以在终端输入: mpls, 若找不到此命令,则没有安装成功,若有此命令,但也不一定成功。

现在可以进行一些简单的配置来测试一下。使用ifconfig查看网卡配置。对一个路由器进行配置的样例 如下所示:

  1. $ifup eth1
  2. $ifconfig eth1 192.168.1.2/24
  3.  
  4. $mpls nhlfe add key instructions push gen nexthop eth1 ipv4 192.168.2.2
  5. $ip route add 192.168.7.0/ via 192.168.2.2 mpls 0x02    //每次输入这个命令,电脑立刻死机,可能是内核冲突,此问题还未解决
  6. $mpls labelspace set dev eth1 labelspace 0
  7. $mpls ilm add label gen labelspace 0
  8. $mpls nhlfe add key instructions nexthop eth0 ipv4 192.168.1.1
  9. $mpls xc add ilm_label gen ilm_labelspace nhlfe_key 0x03

linux系统安装iprouter的更多相关文章

  1. linux系统安装(上)

    1.VMware虚拟机的软件应用 www.vmware.com 2.linux系统安装设置(分区为重点) 3.远程登录管理工具介绍centOS5.5 使用虚拟机的优点 1.不用分区 2.可以完成本机与 ...

  2. 1.Linux系统安装

    Linux系统安装系统分区(磁盘分区) 主要管理:文件和目录分类:主分区:最多有4个 扩展分区:1个扩展分区 和主分区最多4个 存放逻辑分区 逻辑分区:存放数据 格式化:高级格式化(逻辑格式化) 写入 ...

  3. Linux学习心得之 LVM管理与Linux系统安装

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 LVM管理与Linux系统安装 1.前言 2.LVM 简介与术语 3.LVM 使用 4.Li ...

  4. Linux系统安装时分区的选择(推荐)

    Linux系统安装时分区的选择(推荐)  出处:http://www.cnblogs.com/gylei/archive/2011/12/04/2275987.html 前言: 以前初识Linux时, ...

  5. LNMP平台搭建---Linux系统安装篇

    在互联网网站开发领域,有一个名词,大家一定不陌生,那就是LAMP,经典的Web服务器环境,由Linux+Apache+MySQL+PHP组成,,后来,一个名叫Nginx的Web服务器开源出来了,因其更 ...

  6. Vmware安装与VMware下Linux系统安装

    源文件地址:http://www.cnblogs.com/lclq/p/5619271.html 1.下载安装VMware,我安装的是VMware 12.VMware从11开始不再支持32位系统,32 ...

  7. linux系统安装(虚拟机以及linux的下载与安装)

    最近开始研究linux系统,以前接触linux系统只是一些简单的命令,例如: pwd:查看当前目录   ls:遍历目录    cd :在目录之间切换等. linux系统是基于unix系统开发的,是一个 ...

  8. Linux达人养成计划1(第2章 Linux系统安装)

    2.3 系统分区之分区与格式化 1. 分区类型 主分区:最多只能有四个. 扩展分区: 最多只能有1个. 主分区加扩展分区最多有4个. 不能写入数据,只能包含逻辑分区. 逻辑分区: 2. 格式化(高级格 ...

  9. 把虚拟机中的Linux系统安装到U盘中

    [小技巧] 把虚拟机中的Linux系统安装到U盘中 出于各种需求,很多用户可能经常会在Windows系统中安装虚拟机,然后在虚拟机中安装Linux系统.使用虚拟机的优点是可以同时使用多个系统,而缺点也 ...

随机推荐

  1. sublime使用方法

    一.sublime菜单简介[常用功能及快捷键] [Edit菜单] 1.line行操作快捷键 ctrl+] 增加缩进 ctrl+[ 减小缩进 ctrl+shift+D 复制当前行 ctrl+shift+ ...

  2. Entity Framework 学习初级篇4--Entity SQL

    Entity SQL 是 ADO.NET 实体框架 提供的 SQL 类语言,用于支持 实体数据模型 (EDM).Entity SQL 可用于对象查询和使用 EntityClient 提供程序执行的查询 ...

  3. 玩Mega8 智能充电器-12. 终于实现-dV检测(转)

    源:http://blog.chinaunix.net/uid-10701701-id-91873.html 2010.1.3 5:30终于补齐了. 电池充电的-dv 的检测系列图片请移步: http ...

  4. 关于tomcat 成功运行之后内存泄露

    在window-preferences  里 搜索 tomcat-jdk 加上以下内容即可 -Xms256m -Xmx512m -XX:MaxNewSize=256m -XX:MaxPermSize= ...

  5. 一键生成JNI头文件方法二

    经常使用java的同学一定都接触过JNI(Java Native Interface)吧.JNI为我们提供了java<---->C/C++之间的接口,使得我们可以在java中调用C程序,以 ...

  6. hrbustoj 2283 heap解题报告

    这是我们校赛的一道题,给一个字符串,判断这是字符串描绘的是不是一个堆,并不难,只是一个简单的模拟,但是也稍微有点麻烦,最起码我的方法代码量比较大,主要用栈做一个父亲与儿子的位置匹配,匹配的方法应该有很 ...

  7. 关于js的连续赋值

    首先,来看一个经典的案例: <script>var a = {n: 1}var b = a;a.x = a = {n: 2}alert(a.x);alert(b.x);</scrip ...

  8. 浏览器加载外部js 的顺序,以及处理顺序。

    问题, 有事候按F12打开 google的调试台后,查看network下面加载过来的资源是, 有些资源的状态处于 pending.. 个人理解: 浏览器是可以同时开启多个http 请求去加载外部的资源 ...

  9. ural1439 Battle with You-Know-Who

    Battle with You-Know-Who Time limit: 2.0 secondMemory limit: 64 MB Rooms of the Ministry of Magic ar ...

  10. ibatis一对多 数据库设计及实现

    iBatis的多表关联. ibatis的表关联,和数据库语句无关,是在Java程序中,把若干语句的结果关联到一起.这种关联形式,虽然在大数据量时是很奢侈的行为,但是看起来很干净,用起来也很方便. 这里 ...