原文:http://blog.sina.com.cn/s/blog_6fd8d5d90101f1xy.html

--------------------------------------------------------------------

学习linux时,你可能会遇到配置静态路由的问题,这里将介绍配置linux静态路由问题的解决方法,在这里拿出来和大家分享一下。现在有五个设备,PC1接ROUT1,ROUT1再接ROUT2,ROUT2再接ROUT3,ROUT3再接PC2,拓扑图见下:

□————○————○————○————□

PC1      ROUT1     ROUT2     ROUT3      PC2

五个设备的linux静态路由IP地址分别为:
PC1 192.168.1.88/24
ROUT1 192.168.1.128/24 192.168.2.128/24
ROUT2 192.168.2.66/24 192.168.3.66/24
ROUT3 192.168.3.100/24 192.168.4.33/24
PC2 192.168.4.66/24

PC1配置如下:
#ifconfig eth0 192.168.1.88 netmask 255.255.255.0
#route add default gw 192.168.1.128

ROUT1配置如下:
#ifconfig eth0 192.168.1.128 netmask 255.255.255.0
#ifconfig eth0: 1 192.168.2.128 netmask 255.255.255.0
#route add -net 192.168.4.0/24 gw 192.168.2.66

ROUT2配置如下:
#ifconfig eth0 192.168.2.66 netmask 255.255.255.0
#ifconfig eth0: 1 192.168.3.66 netmask 255.255.255.0
#route add -net 192.168.1.0/24 gw 192.168.2.128
#route add -net 192.168.4.0/24 gw 192.168.3.100

ROUT3配置如下:
#ifconfig eth0 192.168.3.100 netmask 255.255.255.0
#ifconfig eth0: 1 192.168.4.33 netmask 255.255.255.0
#route add -net 192.168.1.0/24 gw 192.168.3.66

PC2配置如下:
#ifconfig eth0 192.168.4.66 netmask 255.255.255.0
#route add default gw 192.168.4.33
这样PC1就能ping通PC2了。

注:
上面三个器这里用三台PC代替。用电脑代替器,必须要启用电脑的IP转发功能,改/proc/sys/net/ipv4/ip_forward里的内容为1(默认为0),用下面的命令完成
#e cho 1 > /proc/sys/net/ipv4/ip_forward
网络重启后,上面的文件自动改为0
补充几个命令:
1、删除默认路由
#route del default
2、linux静态路由查看
#route -n
3、设置指定网段路由
#route add -net 192.168.3.0 netmask 255.255.255.0 gw 192.168.6.66
或者
#route add -net 192.168.3.0/24 gw 192.168.6.66
4、删除指定网段路由
#route del -net 192.168.3.0 netmask 255.255.255.0
或者
#route del -net 192.168.3.0/24
以上给大家介绍的是linux静态路由的配置方法。

nternet------(eth1)router1(eth2)------(eth1)router2(eth0)------(eth0)router3(eth1)------(eth0)pc

上面就是我的网络拓扑结构,其中路由器1是用来连接外部网络的一台linux机器,图中所有路由器都是普通的pc机,这些pc都安装了ubuntu桌面系统,除了最右边的pc,其余的pc都装了3张网卡(其中一张备用)。

由于Debian系的网卡配置跟Redhat系很不一样,Redhat是放在/etc/sysconfig/network-scripts目录下面的一大堆文件里面。而Debian系的网卡配置则是存在/etc/network/interfaces这个文件里面,而且不管你有多少块网卡,系统都把配置统统放在这个文件里。下面就来看一下这个文件的内容。

首先,我们来看router1的配置:

auto lo
iface lo inet loopback
iface lo inet6 loopback
auto eth0
iface eth0 inet static
      address 192.168.2.1
      network 192.168.2.0
      netmask 255.255.255.0
      broadcast 192.168.2.255
      up route add -net 192.168.3.0 netmask 255.255.255.0 gw 192.168.2.2 dev eth0
      down route del -net 192.168.3.0 netmask 255.255.255.0 gw 192.168.2.2 dev eth0
      up route add -net 192.168.4.0 netmask 255.255.255.0 gw 192.168.2.2 dev eth0
      down route del -net 192.168.4.0 netmask 255.255.255.0 gw 192.168.2.2 dev eth0
iface eth0 inet6 static
      address 2000:2::1
      netmask 64
      up route -A inet6 add 2000:3::/64 gw 2000:2::2
      up route -A inet6 add 2000:4::/64 gw 2000:2::2
      down route -A inet6 del 2000:3::/64 gw 2000:2::2
      down route -A inet6 del 2000:4::/64 gw 2000:2::2
auto eth1
iface eth1 inet dhcp

上面的配置中,

auto说明lo接口跟eth0接口会在系统启动时被自动配置;lo为一个本地回环(loopback)地址,这里分别设置了v4和v6两个 loopback;static说明这是一个静态的IP配置;后面配置的作用在于在接口启用的时候,添加两条静态路由,并且在接口禁用的时候,删掉这两条路由配置。至于配置路由的写法,跟cmd line下的route命令一样(除了开头的up down)。

后面的eth1是连接外部的Internet,所以用了跟外面相连的dhcp。

路由器在配好这个文件之后,还需要enable自身的ip转发,这就需要进入到/etc/sysctl.conf这个文件当中,加入 net.ipv4.ip_forward=1,以及net.ipv6.default.ip_forward=1这两句话。退出后,再sysctl -p /etc/sysctl.conf。这就打开了ip转发。

配好转发之后,还不能对外上网,但router之间已经能互相ping通,这就需要在每台router上配置dns服务器,需要在/etc/resolv.conf中加入相应信息:

search test.com
nameserver *.*.*.*

这样之后后面的几台路由器都可以根据自己的dft gw找到router1并取得跟外网的联系并连上Internet了

如果要配ipv6的multicast,这就要借助mrd6这个软件来实现,具体配置方法非常简单,你只要把deb包安装好,然后配置mrd.conf这个文件就行。运行的时候只要在有mrd.conf文件的文件夹下sudo mrd6就ok了。

其余router的配置与router1大抵相同,而pc跟这个不同

重启网络配置

sudo /etc/init.d/networking restart

ubuntu 配置静态路由的更多相关文章

  1. ubuntu配置静态路由

    1. #ifconfig 注意 eth0为你要配置的interfase 2. #vi /etc/network/interfaces # This file describes the network ...

  2. 关于ubuntu配置静态IP 无法正常上网的解决方案

    在ubuntu中配置静态IP后无法正常上网. 解决: 1.在终端执行 vim /etc/network/interfaces 在文件中加入如下内容,网关要写上,我开始一直无法上网就是因为没有配置网关 ...

  3. Centos7/RHEL 7 配置静态路由

    如图: 业务地址:192.168.10.0/24    192.168.20.0/24管理地址:172.168.10.0/24    172.168.20.0/24 需求:每台主机配置两张网卡,分别连 ...

  4. Network基础(五):配置静态路由、配置浮动路由、配置多路由的静态路由、配置默认路由

    一.配置静态路由 目标: 配置路由接口IP地址并通过静态路由的配置实现全网的互通. 方案: 按如下网络拓扑配置接口IP地址并通过静态路由的配置实现全网的互通如下图所示: 步骤: 步骤一:配置静态路由 ...

  5. 技能实际操作:如何为Centos7 配置静态路由?

    如图: 业务地址:192.168.10.0/24 ---- 192.168.20.0/24 管理地址:172.168.10.0/24 --- 172.168.20.0/24 需求:每台主机配置两张网卡 ...

  6. H3C路由器配置——静态路由

    一.网络畅通条件及排错思路 1.网络畅通的条件 网络畅通的条件:数据包能去能回,也是我们排除网络故障的理论依据. 2.网络不畅通示列 ①.目标主机不可达 原因分析:可能是数据包没有到达目的地,在中途就 ...

  7. 华为HCIA认证零基础入门-网络工程师必备之什么是静态路由?如何配置静态路由?

    一.静态路由功能介绍:静态路由就是手工配置的路由,使得数据包能够按照预定的路径传送到指定的目标网络. 当不能通过动态路由协议学到一些目标网络的路由时,配置静态路由就会显得十分重要. 二.静态路由应用场 ...

  8. 实验一:在FW上配置静态路由实现互通

    实验:在FW上配置静态路由实现互通 网络拓扑图 一.配置步骤 1.配置IP地址 R1: FW: ISP:       2.配置路由 ①在R2上面配置静态路由 ②在ISP上面配置静态路由 3.在FW上配 ...

  9. CentOS启动网络提示connect: Network is unreachable(配置静态路由)

    ls /etc/sysconfig/network-script/ifcfg-eth0 一.看是否在上述目录下存在ifcfg-eth0 这个文件,若存在则按下面的步骤操作: 1.手工配置ip看能不能配 ...

随机推荐

  1. VMware 14 Pro 永久许可证激活密钥

    VMware 14 Pro 永久许可证激活密钥 FF31K-AHZD1-H8ETZ-8WWEZ-WUUVACV7T2-6WY5Q-48EWP-ZXY7X-QGUWD

  2. [转]Android杂谈--ListView之BaseAdapter的使用

    本文转自:http://blog.csdn.net/tianshuguang/article/details/7344315 话说开发用了各种Adapter之后感觉用的最舒服的还是BaseAdapte ...

  3. 关于编辑器对<input>标签报错提示“表单输入没有相关label”的问题

    相信很多朋友在制作表单的时候,我们的编辑器会有下图的相关提示吧 我们发现虽然这样并不影响我们的正常使用,但是看着这样的报错提示总是很让人心烦,那么这到底是为什么呢? 其实,这是因为编辑器建议我们在使用 ...

  4. mysql和java的时间对应关系

    引用:http://blog.csdn.net/xinghuo0007/article/details/51500923 MySQL(版本:5.1.50)的时间日期类型如下: datetime 8by ...

  5. JS——设置cookie

    cookie 用来识别用户. <html> <head> <script type="text/javascript"> function ge ...

  6. Linux 查询PID和端口号

    https://www.cnblogs.com/understander/p/5546458.html

  7. Python星号表达式

    有时候可能想分解出某些值然后丢弃它们,可以使用诸如 _ 或者 ign(ignored)等常用来表示待丢弃值的变量名: record = ('ACME', 50, 123.45, (12, 18, 20 ...

  8. lsof command not found 解决

    有些centos 没有 lsof命令,需要安装 yum install lsof -y 使用: lsof -i:端口号

  9. CAD绘制一个直径标注(com接口VB语言)

    主要用到函数说明: _DMxDrawX::DrawDimDiametric 绘制一个直径标注.详细说明如下: 参数 说明 DOUBLE dChordPointX 在被标注的曲线上的第一个点X值 DOU ...

  10. Python 不定长参数、全局变量、局部变量 day4

    一.不定长参数 在函数定义中,经常会碰到*args 和**kwargs作为参数. 事实上在函数中,*和**才是必要的,args和kwargs可以用其他名称代替 *args 是指不定数量的非键值对参数. ...