热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

站点间动态IP地址实现VPN配置实例

利用Internet出口线路建立VPN通道实现总、分公司之间的互联,是目前许多公司热衷的方案。以往要建立这样的VPN,需要至少一端使用静态的IP地址。当前很多公司都通过ADSL方式上网,如果要求电信提供静态地址,费用将会大大增加(如深圳512K固定IP的ADSL

利用Internet 出口线路建立VPN通道 实现 总、分公司之间的互联,是目前许多公司热衷的方案。以往要建立这样的VPN,需要至少一端使用静态的IP 地址 。当前很多公司都通过ADSL方式上网,如果要求电信提供静态 地址 ,费用将会大大增加(如深圳512K固定IP的ADSL

利用Internet 出口线路建立VPN通道实现总、分公司之间的互联,是目前许多公司热衷的方案。以往要建立这样的VPN,需要至少一端使用静态的IP地址。当前很多公司都通过ADSL方式上网,如果要求电信提供静态地址,费用将会大大增加(如深圳512K固定IP的ADSL月租是RMB5000)。现在Cisco IOS 12.3(4)T中新增了根据DNS名称来建立VPN peer 的命令,借助希网(3322.org)、88ip等动态域名解释系统的配合,可以在VPN两端都使用动态地址的ADSL线路,节省大笔费用。

关键命令:

set peer {host-name [dynamic] | ip-address}

说明:

host-name 指定IPSec peer的DNS主机名称,如:myhost.example.com。

dynamic (可选参数) 指定 IPSec peer 的主机名在需要建立IPSec通道的时候才通过DNS服务器解释为IP地址

ip-address 直接给出IPSec peer的IP地址(传统的配置方式)。



实际环境中局域网内应在一台机器上运行动态域名解释客户端程序,以将主机名nbo.3322.org注册到服务器,注册地址是路由器的外网端口地址

配置:

VPN-1(省略了部分无关配置):

version 12.3

!

hostname vpn-1

!

aaa new-model

!

aaa authentication login authen group radius local

aaa authorization network author local

aaa session-id common

ip subnet-zero

!

ip cef

ip name-server 202.96.134.133

!

crypto isakmp policy 10

authentication pre-share

group 2

crypto isakmp key cisco address 0.0.0.0 0.0.0.0

!

crypto ipsec transform-set s2s esp-des esp-sha-hmac

!

crypto dynamic-map dymap 1

set transform-set s2s

match address 110

!

crypto map mymap 1 ipsec-isakmp dynamic dymap

!

interface FastEthernet0/0

description VPN

ip address 202.11.22.11 255.255.255.248

ip nat outside

crypto map mymap

!

interface FastEthernet0/1

description INSIDE_GATEWAY

ip address 172.16.10.110 255.255.0.0

ip nat inside

!

ip nat inside source route-map nonat interface FastEthernet0/0 overload

ip classless

ip route 0.0.0.0 0.0.0.0 FastEthernet0/0

no ip http server

!

access-list 110 permit ip 172.16.0.0 0.0.255.255 172.30.1.0 0.0.0.255

access-list 120 deny

ip 172.16.0.0 0.0.255.255 172.30.1.0 0.0.0.255

access-list 120 permit ip 172.16.0.0 0.0.255.255 any

route-map nonat permit 10

match ip address 120

!

end

VPN-2(省略了部分无关配置):

version 12.3

!

hostname vpn-2

!

username mize password 0 http://mize.netbuddy.org

no aaa new-model

ip subnet-zero

!

ip cef

ip name-server 202.96.134.133

!

crypto isakmp policy 1

authentication pre-share

group 2

crypto isakmp key cisco hostname nbo.3322.org

!

crypto ipsec transform-set s2s esp-des esp-sha-hmac

!

crypto map mymap 10 ipsec-isakmp

set peer nbo.3322.org dynamic

set transform-set s2s

match address 110

!

interface FastEthernet0/0

ip address 202.11.22.43 255.255.255.248

ip nat outside

crypto map mymap

!

interface FastEthernet0/1

ip address 172.30.1.1 255.255.255.0

ip nat inside

!

ip nat inside source route-map nonat interface FastEthernet0/0 overload

ip classless

ip route 0.0.0.0 0.0.0.0 FastEthernet0/0

!

access-list 110 permit ip 172.30.1.0 0.0.0.255 172.16.0.0 0.0.255.255

access-list 120 deny

ip 172.30.1.0 0.0.0.255 172.16.0.0 0.0.255.255

access-list 120 permit ip 172.30.1.0 0.0.0.255 any

route-map nonat permit 10

match ip address 120

!

end

相关调试命令:

show cry isa sa

show cry ipsec sa

推荐阅读
  • 本文介绍了解决Netty拆包粘包问题的一种方法——使用特殊结束符。在通讯过程中,客户端和服务器协商定义一个特殊的分隔符号,只要没有发送分隔符号,就代表一条数据没有结束。文章还提供了服务端的示例代码。 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 本文介绍了使用AJAX的POST请求实现数据修改功能的方法。通过ajax-post技术,可以实现在输入某个id后,通过ajax技术调用post.jsp修改具有该id记录的姓名的值。文章还提到了AJAX的概念和作用,以及使用async参数和open()方法的注意事项。同时强调了不推荐使用async=false的情况,并解释了JavaScript等待服务器响应的机制。 ... [详细]
  • PHP设置MySQL字符集的方法及使用mysqli_set_charset函数
    本文介绍了PHP设置MySQL字符集的方法,详细介绍了使用mysqli_set_charset函数来规定与数据库服务器进行数据传送时要使用的字符集。通过示例代码演示了如何设置默认客户端字符集。 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
author-avatar
浪子一品香_938
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有