linux 创建ll,两台linux建立GRE隧道

1.拓扑图: 54cde451510ecdbe67dacef7e028e7f9.png

备注:因为应用原因,需要在linux2上添加一个公网地址,并且在中间路由设备不受控制的情况下,Linux1能访问到linux2上面的公网地址。

2.基本接口配置:

linux1:192.168.10.1/24

linux2:192.168.20.2/24

R1:

interface FastEthernet0/0

ip address 192.168.10.10 255.255.255.0

no shutdown

!

interface FastEthernet0/1

ip address 192.168.20.10 255.255.255.0

no shutdown

3.路由配置:

linux1网关:192.168.10.10

linux2网关:192.168.20.10

R1:只有直连路由

4.Linux2单网卡多地址配置:

[root@Linux1 ~]# cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0:0

[root@Linux1 ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0:0

# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]

DEVICE=eth0:0

BOOTPROTO=none

ONBOOT=yes

HWADDR=00:0c:29:08:48:63

NETMASK=255.255.255.252

IPADDR=202.100.2.2

TYPE=Ethernet

USERCTL=no

IPV6INIT=no

PEERDNS=yes

[root@Linux1 ~]# service network restart

[root@Linux1 ~]# ping 202.100.2.2

PING 202.100.2.2 (202.100.2.2) 56(84) bytes of data.

64 bytes from 202.100.2.2: icmp_seq=1 ttl=64 time=0.124 ms

--- 202.100.2.2 ping statistics ---

1 packets transmitted, 1 received, 0% packet loss, time 0ms

rtt min/avg/max/mdev = 0.124/0.124/0.124/0.000 ms

[root@ams ~]# ping 192.168.10.10

PING 192.168.10.10 (192.168.10.10) 56(84) bytes of data.

64 bytes from 192.168.10.10: icmp_seq=1 ttl=255 time=70.6 ms

--- 192.168.10.10 ping statistics ---

1 packets transmitted, 1 received, 0% packet loss, time 0ms

rtt min/avg/max/mdev = 70.629/70.629/70.629/0.000 ms

5.GRE tunnel配置:

A.确定是否加载了GRE模块

[root@Linux1 ~]# lsmod |grep ip_gre

[root@Linux2 ~]# lsmod |grep ip_gre

B.加载GRE模块

[root@linux1 ~]# uname -an

Linux linux1 2.6.9-78.EL#1 Wed Jul 9 15:27:01 EDT 2008 i686 i686 i386 GNU/Linux

[root@linux1 ~]# insmod /lib/modules/2.6.9-78.EL/kernel/net/ipv4/ip_gre.ko

[root@linux2 ~]# uname -an

Linux linux2 2.6.18-164.el5 #1 SMP Thu Sep 3 03:33:56 EDT 2009 i686 i686 i386 GNU/Linux

[root@linux2 ~]# insmod /lib/modules/2.6.18-164.el5/kernel/net/ipv4/ip_gre.ko

C.GRE tunnel接口配置

Linux1:

ip tunnel add tunnel0 mode gre remote 192.168.20.2 local 192.168.10.1 ttl 255

ip link set tunnel0 up mtu 1400

ip addr add 172.16.1.1/30  dev tunnel0

ip addr add 172.16.1.1/30 peer 172.16.1.2/30 dev tunnel0

ip route add 202.100.2.2/32 dev tunnel0

Linux2:

ip tunnel add tunnel0 mode gre remote 192.168.10.1 local 192.168.20.2 ttl 255

ip link set tunnel0 up mtu 1400

ip addr add 172.16.1.2/30  dev tunnel0

ip addr add 172.16.1.2/30 peer 172.16.1.1/30 dev tunnel0

D.将tunnel配置开机运行:

linux1:

vi /etc/init.d/gre.sh   ##内容如下:

insmod /lib/modules/2.6.9-78.EL/kernel/net/ipv4/ip_gre.ko

ip tunnel add tunnel0 mode gre remote 192.168.20.2 local 192.168.10.1 ttl 255

ip link set tunnel0 up mtu 1400

ip addr add 172.16.1.1/30  dev tunnel0

ip addr del 172.16.1.1/30 peer 172.16.1.2/30 dev tunnel0

ip addr add 172.16.1.1/30 peer 172.16.1.2/30 dev tunnel0

ip route add 202.100.2.2/32 dev tunnel0

chmod +x /etc/init.d/gre.sh

echo "/etc/init.d/gre.sh" >> /etc/rc.d/rc.local

linux2:

vi /etc/init.d/gre.sh ##内容如下:

insmod /lib/modules/2.6.18-164.el5/kernel/net/ipv4/ip_gre.ko

ip tunnel add tunnel0 mode gre remote 192.168.10.1 local 192.168.20.2 ttl 255

ip link set tunnel0 up mtu 1400

ip addr add 172.16.1.2/30  dev tunnel0

ip addr del 172.16.1.2/30 peer 172.16.1.1/30 dev tunnel0

ip addr add 172.16.1.2/30 peer 172.16.1.1/30 dev tunnel0

chmod +x /etc/init.d/gre.sh

echo "/etc/init.d/gre.sh" >> /etc/rc.d/rc.local

D.验证GRE接口

[root@Linux1 ~]#ip addr show

1: lo: mtu 16436 qdisc noqueue

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

inet 127.0.0.1/8 brd 127.255.255.255 scope host lo

inet6 ::1/128 scope host

valid_lft forever preferred_lft forever

2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000

link/ether 00:0c:29:e4:65:78 brd ff:ff:ff:ff:ff:ff

inet 192.168.10.1/24 brd 192.168.10.255 scope global eth0

inet6 fe80::20c:29ff:fee4:6578/64 scope link

valid_lft forever preferred_lft forever

3: sit0: mtu 1480 qdisc noop

link/sit 0.0.0.0 brd 0.0.0.0

4: gre0: mtu 1476 qdisc noop

link/gre 0.0.0.0 brd 0.0.0.0

5: tunnel0@NONE: mtu 1400 qdisc noqueue

link/gre 192.168.10.1 peer 192.168.20.2

inet 172.16.1.1 peer 172.16.1.2/30 scope global tunnel0

[root@Linux2 ~]#ip addr show

1: lo: mtu 16436 qdisc noqueue

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

inet 127.0.0.1/8 scope host lo

inet6 ::1/128 scope host

valid_lft forever preferred_lft forever

2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000

link/ether 00:0c:29:08:48:63 brd ff:ff:ff:ff:ff:ff

inet 192.168.20.2/24 brd 192.168.20.255 scope global eth0

inet 202.100.2.2/30 brd 202.100.2.3 scope global eth0:0

inet6 fe80::20c:29ff:fe08:4863/64 scope link

valid_lft forever preferred_lft forever

3: sit0: mtu 1480 qdisc noop

link/sit 0.0.0.0 brd 0.0.0.0

4: gre0: mtu 1476 qdisc noop

link/gre 0.0.0.0 brd 0.0.0.0

5: tunnel0@NONE: mtu 1400 qdisc noqueue

link/gre 192.168.20.2 peer 192.168.10.1

inet 172.16.1.2 peer 172.16.1.1/30 scope global tunnel0

5.效果测试:

[root@linux1 ~]#  ping 202.100.2.2

PING 202.100.2.2 (202.100.2.2) 56(84) bytes of data.

64 bytes from 202.100.2.2: icmp_seq=0 ttl=64 time=82.4 ms

64 bytes from 202.100.2.2: icmp_seq=1 ttl=64 time=48.7 ms

--- 202.100.2.2 ping statistics ---

2 packets transmitted, 2 received, 0% packet loss, time 1002ms

rtt min/avg/max/mdev = 48.784/65.633/82.482/16.849 ms, pipe 2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/301556.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Exchange Server2010系列之十一:部署CAS+HT角色高可用性

Exchange Server 2010使用基于角色的管理模型。多角色服务器的安装及配置,我们在前面的文章中已经做过介绍。本案例中根据高可用性要求,我们需要把服务器角色部署在分开的服务器上面,并且实现CAS、HT、MBX角色的高可用。在此,我的…

用BenchmarkDotNet看Property

属性——Property,由get,set访问器组成,这是C#使用度比较高的类成员。今天分几组对比测试,来看一下使用Property的性能。被测试对象:public class MyClass {private string _myProperty1 DateTime.Now.ToString();public string …

盘点2019年最有钱的爸爸们

全世界只有3.14 % 的人关注了数据与算法之美纽约时间3月5日,又到了一年一度的大佬炫富时间了,福布斯发布第33期2019年度全球亿万富豪榜,全世界最有钱的人都在这了。第33期福布斯全球亿万富豪榜TOP20 ↓据统计,本次评选一共有2153位…

android拖拽 字体变形,字体变形的几种方法与技巧

原标题:字体变形的几种方法与技巧替换法是在统一形态的文字元素加入另类不同的图形元素或文字元素。 其本质是根据文字的内容意思,用某一形象替代字体的某个部分或某一笔画,这些形象或写实或夸张。将文字的局部替换,是文字的内涵外…

ML.NET Cookbook:(18)如何在文本数据上训练模型?

一般来说,所有的ML.NET学习器都希望这些特征是一个浮点向量。因此,如果您的一些数据不是一个float,您需要将其转换为float。如果我们想学习文本数据,我们需要从文本中“提取特征”。NLP(自然语言处理)的整个…

每日一笑 | 终于知道为什么胖了之后气质会垮了

全世界只有3.14 % 的人关注了数据与算法之美(图片来源于网络,侵权删)

android led闪烁功能,如何在Android应用层中制作一个LED指示灯效果

如何在Android应用层中制作一个LED指示灯效果发布时间:2020-12-08 16:12:59来源:亿速云阅读:86作者:Leah本篇文章给大家分享的是有关如何在Android应用层中制作一个LED指示灯效果,小编觉得挺实用的,因此分享…

人工智能时代,学好数学很重要!

随着科技的快速发展,人工智能的重要性日渐显现。而数学知识蕴含着处理智能问题的基本思想与方法,是理解复杂算法的必备要素。在机器学习工作流程中,数学与代码高度交织在一起,代码通常可以根据数学直观地构建,甚至会共…

android编译的错误日志,Android Studio:编译器错误输出窗口在哪里?

当我在Android Studio中“运行”我的项目时,在“消息”窗口中,我得到:Gradle:FAILURE: Build failed with an exception.* What went wrong:Execution failed for task :play01:compileDebug.> Compilation failed; see the compiler erro…

为什么选择ASP.NET Core

什么是.NET有一次小飞去面试,面试官上来就问了一个宏观的问题:“你觉得什么是.NET”?小飞的脑子嗡嗡的,支吾了半天,才吐了一些碎片化的词语:“跨平台、开源、微软…”虽然作为一个.NET人,但是小…

c++中的new_handler

原文地址:http://blog.csdn.net/wzq981264/article/details/673630 在过去或者传统的模式中,当operator new不能满足一个内存分配请求的时候,它会返回一个空指针,但是现在如果operator new不能满足一个内存分配请求的时候&#xf…

抢不到“猫抓杯”怎么办?这些女神更喜欢

▲数据汪特别推荐点击上图进入玩酷屋不久前才送走了西方情人节,男同胞们的第二个“送礼节”----女神节。这个令所有女生翘首、期待、憧憬、摩拳擦掌的日子,令所有男士小心翼翼、挑礼物到崩溃的日子,就要到了。小木作为妇女之友,听…

程序出Bug,一定是环境的锅!

现象前几天,一个客户反映说,他看到的数据顺序是乱的,不是按照日期倒排。但是在测试环境、预生产环境,都无法重现问题,即使使用相同的程序版本。定位查看代码,出问题的功能使用了第三方ORM框架,无…

android webview js 失效,Android WebView注入JQuery、JS脚本及执行无效的问题解决

在项目中遇到JQuery注入后,执行无效的问题。我们知道必须在网页加载完成后,也就是在onPageFinished()方法被调用后才能执行被注入的JS。但是在有些手机上并不能成功执行,我的解决方案是设置一秒延迟后注入JS,成功了!wh…

AIX逻辑卷管理(LVM)

VG PV PP LV LP关系图 转载于:https://www.cnblogs.com/limt/archive/2013/04/06/4199257.html

鸿蒙操作系统如何打通 Windows 操作系统?

华为:我们选择拥抱 Windows华为给出的解决方案是在微软 Windows 操作系统中部署 HarmonyOS 分布式插件。运行 Windows 操作系统的电脑和运行鸿蒙操作系统的华为手机将形成超级终端,文件资源管理器实现互通。在 Windows 文件资源管理器中,将显…

凯立德导航android历史版本,凯立德导航升级2020版

凯立德导航升级2020版是一款非常专业的手机机车导航软件,它可以为大家提供便捷的导航服务,用户只需要输入自己想去的地方,软件会智能推荐一条最便捷的路线,同时会告知用户目的地附近热门的吃喝玩乐场所,有需要的用户来…

用 Python 实现打飞机

全世界只有3.14 % 的人关注了数据与算法之美所用技术和软件python 2.7pygame 1.9.3pyCharm准备工作安装好 pygame 在第一次使用 pygame 的时候,pyCharm 会自动 install pygame。下载好使用的素材。技术实现初始化 pygame首先要初始化 pygame ,之后设定一…

QT-Linux开发环境的搭建

转自:http://blog.csdn.net/wh_19910525/article/details/8118381 如果读者需要在Linux下进行开发,可以使用下面简单的步骤来搭建环境: (下面以Ubuntu 12.04 为例进行说明)1. 下载软件 到http://get.qt.nokia.com/qt/s…

把HttpClient换成IHttpClientFactory之后,放心多了

前言关于HttpClient的使用,个人在很多场景都派上用场了,比如在Winform或后台服务中用其调用接口获取和上传数据、微服务中用其进行各服务之间的数据共享等,到目前来看,似乎还没有出现过什么问题,但当我看到官方文档介绍…