在上文中将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也拷贝到该目录下。

$ sudo cp iproute2-2.6..tar.gz /usr/src/linux-2.6.

$ sudo cp iproute2-v2.6.39-mpls.patch /usr/src/linux-2.6.

$ cd /usr/src/linux-2.6.

$ sudo tar –zxf iproute2-2.6..tar.gz

3)将patch文件打进iprouter中

# cd /usr/src/linux-2.6./iprouter2-2.6.

# patch–p1 < ../iproute2-v2.6.39-mpls.patch

4)对iprouter进行编译

$ cd /usr/src/linux-2.6./iprouter2-2.6.

$ sudo ./configure

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

Problem:iptables modules directory: not found!

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

then

Ehco“using iptables”

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

Else

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

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

$ sudo make

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

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

sudo apt-get install bison
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

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

$ tar -zxf db-4.6..tar.gz
$ cd db-4.6.18
$ cd build_unix
$ sudo ../dist/configure --prefix=$INSTALLPATH --enable-compat185
$ sudo make
$ sudo make install

查找文件:

$ sudoupdated        //在查找文件之前先手动更新索引
$ 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/

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

 $ sudo make install

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

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

$ifup eth1
$ifconfig eth1 192.168.1.2/24 $mpls nhlfe add key instructions push gen nexthop eth1 ipv4 192.168.2.2
$ip route add 192.168.7.0/ via 192.168.2.2 mpls 0x02    //每次输入这个命令,电脑立刻死机,可能是内核冲突,此问题还未解决
$mpls labelspace set dev eth1 labelspace 0
$mpls ilm add label gen labelspace 0
$mpls nhlfe add key instructions nexthop eth0 ipv4 192.168.1.1
$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. 教你用CSS代码写出的各种形状图形

    做网页设计时经常要用到各种形状的图形,对于规则的图形很简单,但是对于不规则的图形,一般我们都是用图片,今天就在这里教大家怎样用css代码写出各种规则不同的图形 1.正方形 #square {width ...

  2. Mysql命令-求一列字段的总和

    求和命令 mysql> select SUM(price) from order where create_time>'2016-03-12';+------------+| SUM(pr ...

  3. iOS之tabbar图片去除渲染以及字体颜色统一配置

    转发:http://www.cnblogs.com/qianLL/p/5521228.html   方式一  代码实现 这种要写很多代码 ,每个控制器都要写   UIImage *image=[UII ...

  4. zf-关于更改账号密码的问题

    一般项目的数据库里都会有一个 SYS_USER表 里面有账号密码 一般 202……70 的都是123加密后的字符串 如果碰到项目运行之后不知道登陆密码的时候 可以在数据库中 把USER_PASS 改成 ...

  5. postgres 错误duplicate key value violates unique constraint 解决方案

    SELECT setval('tablename_id_seq', (SELECT MAX(id) FROM tablename)+1) 主要是:serial key其实是由sequence实现的,当 ...

  6. Hadoop集群搭建的密钥配置SSH实现机制

  7. Altera CYCLONE III FPGA BGA布线

    最近在做altera FPGA BGA相关的布线工作,收集了一些资料,公开出来以供大家讨论. 首先是器件引脚,只有弄清楚器件各个引脚的功能才能够进行布线,下面的文档详细描述了每个引脚的功能. 各引脚功 ...

  8. JSP/JAVA目录清单

    JAVA253中国象棋(CS) JAVA258网络五子棋游戏的设计与实现(CS) JAVA390停车场管理系统SQL(CS) JSP001学生综合素质测评系统JAVA+Mysql JSP002学生成绩 ...

  9. iOS之SDWebImage清理缓存

    .找到 SDWebImage找到SDImageCache类 添加如下方法 - (float)checkTmpSize { float totalSize = 0; NSDirectoryEnumera ...

  10. 深度学习框架Caffe的编译安装

    深度学习框架caffe特点,富有表达性.快速.模块化.下面介绍caffe如何在Ubuntu上编译安装. 1. 前提条件 安装依赖的软件包: CUDA 用来使用GPU模式计算. 建议使用 7.0 以上最 ...