在RHEL7.1上安装GNS3(Cisco路由、交换模拟器)

最近又开始弄网络了,于是就动手整下。

GNS3官网: www.gns3.com,在上面注册个用户即可下载程序,Windows、Linux、MacOS版本均有。我下载的是目前最新的GNS3-1.3.11.source.zip的源码包。这里有Ubuntu的安装向导

下面开始安装,GNS3由python setup来管理:

  1. 编译安装Zlib库,当然也可以yum install zlib-devel
    wget http://zlib.net/zlib-1.2.8.tar.gz
    tar zxf zlib-1.2.8.tar.gz -C /usr/local/src/
    cd /usr/local/src/zlib-1.2.8/
    CFLAGS="-fPIC -O3" ./configure --shared --64
    make -j `cat /proc/cpuinfo | grep processor | wc -l`;make install
    chcon -R -u system_u /usr/local/lib/libz.so*
  2. 编译安装openssl,为了使Python支持HTTPS
    wget https://www.openssl.org/source/openssl-1.0.2d.tar.gz
    tar zxf openssl-1.0.2d.tar.gz -C /usr/local/src/
    cd /usr/local/src/openssl-1.0.2d/
    CFLAGS="-fPIC -O3" ./config --prefix=/usr/local/openssl --shared
    make -j `cat /proc/cpuinfo | grep processor | wc -l`;make install
    ln -s /usr/local/openssl/lib/* /usr/local/lib/
    ln -s /usr/local/openssl/lib/pkgconfig/* /usr/local/lib/pkgconfig/
    ln -s /usr/local/openssl/include/openssl/ /usr/local/include/
  3. 安装Bison,编译它需要M4-1.16以上
    wget http://ftp.gnu.org/gnu/bison/bison-3.0.4.tar.xz
    tar Jxf bison-3.0.4.tar.xz -C /usr/local/src/
    cd /usr/local/src/bison-3.0.4/
    CFLAGS="-fPIC -O3" ./configure
    make -j `cat /proc/cpuinfo | grep processor | wc -l`;make install
  4. 安装Python3.4.3,GNS3官方说不能使用2.7,当然最好也不要太高
    wget https://www.python.org/ftp/python/3.4.3/Python-3.4.3.tar.xz
    tar Jxf Python-3.4.3.tar.xz -C /usr/local/src/
    cd /usr/local/src/Python-3.4.3/
    CFLAGS="-fPIC -O3" ./configure --prefix=/usr/local/Python --enable-shared --enable-ipv6
    make -j `cat /proc/cpuinfo | grep processor | wc -l`;make install
    ln -s /usr/local/Python/bin/python3 /usr/local/bin/python
    ln -s /usr/local/Python/lib/libpython3.4m.so.1.0 /usr/local/lib/
    echo "/usr/local/lib" >> /etc/ld.so.conf.d/complie.conf
    ldconfig
    python --version
  5. 安装python setuptools
    wget https://pypi.python.org/packages/source/s/setuptools/setuptools-18.5.tar.gz
    tar zxf setuptools-18.5.tar.gz -C /usr/local/src/
    python setup.py install
    /usr/local/Python/bin/pip3 install netifaces
  6. 安装QT,注意QT需要4版本,使用5版本在编译后面的Pyqt4时会报错,虽然也有Pyqt5,而GNS3使用的就是Pyqt4,由于不清楚,所以先安装的QT5,安装方法就一起贴上来了,QT5安装有图形界面,很简单,安装速度也快,QT4编译安装需要大量时间
    QT5安装:

    wget http://download.qt.io/official_releases/qt/5.5/5.5.1/qt-opensource-linux-x64-5.5.1.run
    ./qt-opensource-linux-x64-5.5.1.run


    QT1
    这步让你登陆或创建账号,可以“SKIP”掉
    QT2

    QT3
    QT4

    QT5
    QT6
    QT7
    QT8
    QT9
    然后加入环境变更即可:

    echo 'QTDIR=/usr/local/Qt5.5.1/5.5/gcc_64/' >> ~/.bash_profile
    echo 'PATH=$PATH:$QTDIR/bin/' >> ~/.bash_profile
    source ~/.bash_profile

    QT4安装,

    wget http://download.qt.io/archive/qt/4.8/4.8.6/qt-everywhere-opensource-src-4.8.6.tar.gz
    tar zxf qt-everywhere-opensource-src-4.8.6.tar.gz -C /usr/local/src/
    cd /usr/local/src/qt-everywhere-opensource-src-4.8.6/
    ./configure -prefix /usr/local/Qt-4.8.6                             ## 注意,这里面指定prefix是一个-且用空格设置路径,非=号

    QT4_install1
    如果配置时报“Basic XLib functionality test failed!”错误:

    QT4_install2
    可以进入配置目录config.tests/x11/xlib/进行具体查看缺少包:

    cd config.tests/x11/xlib/
    make


    QT4_install3安装之:

    yum install libX11-devel libXext-devel

    然后重新进行配置、编译

    cd -
    ./configure -prefix /usr/local/Qt-4.8.6

    QT4_install4

    gmake
    gmake install

    设置环境变量

    echo 'QTDIR=/usr/local/Qt-4.8.6/' >> ~/.bash_profile
    echo 'PATH=$PATH:$QTDIR/bin/' >> ~/.bash_profile
    source ~/.bash_profile
  7. 安装sip、PyQt4
    wget http://sourceforge.net/projects/pyqt/files/sip/sip-4.17/sip-4.17.tar.gz
    tar zxf sip-4.17.tar.gz -C /usr/local/src/
    cd /usr/local/src/sip-4.17/
    python configure.py CFLAGS="-fPIC -O3"
    make -j `cat /proc/cpuinfo | grep processor | wc -l`;make install
    cd -
    wget http://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-4.11.4/PyQt-x11-gpl-4.11.4.tar.gz
    tar zxf PyQt-x11-gpl-4.11.4.tar.gz -C /usr/local/src/
    cd /usr/local/src/PyQt-x11-gpl-4.11.4/
    python configure.py CFLAGS="-fPIC -O3"
    make -j `cat /proc/cpuinfo | grep processor | wc -l`;make install

    如果是使用QT5配置时就会报错:Error: This version of PyQt and the commercial version of Qt have incompatible licenses.
    Licenses Error
    换成QT4即可!

  8. 安装GNS3
    mkdir gns3
    mv GNS3-1.3.11.source.zip gns3/
    cd gns3/
    unzip -q GNS3-1.3.11.source.zip
    unzip -q dynamips-0.2.14.zip
    cd dynamips-0.2.14
    cmake .

    如果cmake时报错:Error at cmake/FindUUID.cmake:21 (MESSAGE):  Could not find UUID,安装libuuid即可

    yum install libuuid-devel
    cmake .
    make -j `cat /proc/cpuinfo | grep processor | wc -l`;make install
    cd ..
    unzip -q gns3-server-1.3.11.zip
    cd gns3-server-1.3.11/
    python setup.py install

    gns3-server

    cd ..
    unzip -q gns3-gui-1.3.11.zip
    cd gns3-gui-1.3.11/
    python setup.py install

    gns3-gui

这样GNS3已经安装完毕可以使用了,当然还有一些其它功能可以选择安装配置,大家可以自己安装。
使用GNS3:
/usr/local/Python/bin/gns3,如图:

GNS3-1

在编辑中定义首选项:
通用中定义终端窗口打开类型,默认为Xterm,若没装可改为Gnome Terminal:
USEGNS3-1
在Server中定义gns3server的程序位置,并且将绑定地址从127.0.0.1改为主机IP地址,这样就可以从其它机器使用像SecurityCRT这样的工具远程连入模拟的路由器、交换机上面:

USEGNS3-2

这里设置好之后当然防火墙需打开端口即可连接:

firewall-cmd --add-port=200{1..9}/tcp

在dynamips中的IOS Routers中使用Cisco的IOS镜像添加设备,相关IOS大家可以自己到网上搜索下载,这里我是添加了7200的设备:
USEGNS3-3

添加好后,就可以在设备中看到新的设备,可以将其拖入中间使用:

USEGNS3-4

打开设备Console 口配置界面:
可以右键点击设备,进入Gnome Terminal界面的Console口,也可以在其它电脑上使用telnet协议,到这台机的200X端口,默认第一台设备是2001,第二台2002,以此类推:

USEGNS3-5USEGNS3-6

发表评论

error: Content is protected !!