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

一篇不错的关于NAT的文章(一)

一、NAT简介NAT(NetworkAddressTranslation)的功能,就是指在一个网络内部,根据需要可以随意自定义的IP地址,而不需要经过申请。在网络内部,各计算机间通过内部的IP地址进行通讯。而当内部的计算机要与外部internet网络进行通讯时,具有NAT功能的设备(

一、NAT简介 NAT(Network Address Translation)的功能,就是指在一个网络内部,根据需要可以随意自定义的IP地址,而不需要经过申请。在网络内部,各计算机间通过内部的IP地址进行通讯。而当内部的计算机要与外部internet网络进行通讯时,具有NAT功能的设备(


  一、NAT简介
  NAT(Network Address Translation)的功能,就是指在一个网络内部,根据需要可以随意自定义的IP地址,而不需要经过申请。在网络内部,各计算机间通过内部的IP地址进行通讯。而当内部的计算机要与外部internet网络进行通讯时,具有NAT功能的设备(比如:路由器)负责将其内部的IP地址转换为合法的IP地址(即经过申请的IP地址)进行通信。
  
  二、NAT 的应用环境:
  情况1:一个企业不想让外部网络用户知道自己的网络内部结构,可以通过NAT将内部网络与外部Internet 隔离开,则外部用户根本不知道通过NAT设置的内部IP地址。
  
  情况2:一个企业申请的合法Internet IP地址很少,而内部网络用户很多。可以通过NAT功能实现多个用户同时公用一个合法IP与外部Internet 进行通信。
  
  三、设置NAT所需路由器的硬件配置和软件配置:
  设置NAT功能的路由器至少要有一个内部端口(Inside),一个外部端口(Outside)。内部端口连接的网络用户使用的是内部IP地址。
  
  内部端口可以为任意一个路由器端口。外部端口连接的是外部的网络,如Internet 。外部端口可以为路由器上的任意端口。
  
  设置NAT功能的路由器的IOS应支持NAT功能(本文事例所用路由器为Cisco2501,其IOS为11.2版本以上支持NAT功能)。
  
  四、关于NAT的几个概念:
  内部本地地址(Inside local address):分配给内部网络中的计算机的内部IP地址。
  
  内部合法地址(Inside global address):对外进入IP通信时,代表一个或多个内部本地地址的合法IP地址。需要申请才可取得的IP地址。
  
  五、NAT的设置方法:
  NAT设置可以分为静态地址转换、动态地址转换、复用动态地址转换。
  
  1、静态地址转换适用的环境
  
  静态地址转换将内部本地地址与内部合法地址进行一对一的转换,且需要指定和哪个合法地址进行转换。如果内部网络有E-mail服务器或FTP服务器等可以为外部用户提供的服务,这些服务器的IP地址必须采用静态地址转换,以便外部用户可以使用这些服务。
  
  静态地址转换基本配置步骤:
  
  (1)、在内部本地地址与内部合法地址之间建立静态地址转换。在全局设置状态下输入:
  
  Ip nat inside source static 内部本地地址 内部合法地址
  
  (2)、指定连接网络的内部端口 在端口设置状态下输入:
  
  ip nat inside
  
  (3)、指定连接外部网络的外部端口 在端口设置状态下输入:
  
  ip nat outside
  
  注:可以根据实际需要定义多个内部端口及多个外部端口。
  
  实例1:
  
  本实例实现静态NAT地址转换功能。将2501的以太口作为内部端口,同步端口0作为外部端口。其中10.1.1.2,10.1.1.3,10.1.1.4的内部本地地址采用静态地址转换。其内部合法地址分别对应为192.1.1.2,192.1.1.3,192.1.1.4。
  
  路由器2501的配置:
  
  Current configuration:
  
  version 11.3
  
  no service password-encryption
  
  hostname 2501
  
  ip nat inside source static 10.1.1.2 192.1.1.2
  
  ip nat inside source static 10.1.1.3 192.1.1.3
  
  ip nat inside source static 10.1.1.4 192.1.1.4
  
  interface Ethernet0
  
  ip address 10.1.1.1 255.255.255.0
  
  ip nat inside
  
  interface Serial0
  
  ip address 192.1.1.1 255.255.255.0
  
  ip nat outside
  
  no ip mroute-cache
  
  bandwidth 2000
  
  no fair-queue
  
  clockrate 2000000
  
  interface Serial1
  
  no ip address
  
  shutdown
  
  no ip classless
  
  ip route 0.0.0.0 0.0.0.0 Serial0
  
  line con 0
  
  line aux 0
  
  line vty 0 4
  
  password cisco
  
  end
  
  配置完成后可以用以下语句进行查看:
  
  show ip nat statistcs
  
  show ip nat translations
  
  2、动态地址转换适用的环境:
  
  动态地址转换也是将本地地址与内部合法地址一对一的转换,但是动态地址转换是从内部合法地址池中动态地选择一个末使用的地址对内部本地地址进行转换。
  
  动态地址转换基本配置步骤:
  
  (1)、在全局设置模式下,定义内部合法地址池
  
  ip nat pool 地址池名称 起始IP地址 终止IP地址 子网掩码
  
  其中地址池名称可以任意设定。
  
  (2)、在全局设置模式下,定义一个标准的access-list规则以允许哪些内部地址可以进行动态地址转换。
  
  Access-list 标号 permit 源地址 通配符
  
  其中标号为1-99之间的整数。
  
  (3)、在全局设置模式下,将由access-list指定的内部本地地址与指定的内部合法地址池进行地址转换。
  
  ip nat inside source list 访问列表标号 pool内部合法地址池名字
  
  (4)、指定与内部网络相连的内部端口在端口设置状态下:


推荐阅读
  • 无线鼠标应用:Remote Mouse
    Remote Mouse 是一款功能强大的无线鼠标软件,可将您的手机或平板设备变为遥控器,完美模拟键盘和鼠标操作,实现手机远程控制电脑。 ... [详细]
  • 本文介绍了如何使用Postman构建和发送HTTP请求,包括四个主要部分:方法(Method)、URL、头部(Headers)和主体(Body)。特别强调了Body部分的重要性,并详细说明了不同类型的请求体。 ... [详细]
  • 本文详细介绍了如何在Windows操作系统中通过Samba服务访问Red Hat Linux中的资源,包括配置Samba服务器、设置工作组名称、添加用户和共享目录等步骤。 ... [详细]
  • 图数据库与传统数仓实现联邦查询使用CYPHER实现从关系数据库过滤时间序列指标一、MySQL得到研报实体在Oracle中的唯一ID二、Oracle中过滤时间序列数据三、CYPHER ... [详细]
  • 本文介绍了在 CentOS 7 系统中如何查看所有活动进程及其运行时间。通过使用 `netstat` 和 `ps` 命令,您可以轻松获取进程的详细信息,包括启动时间、用户、终端和命令等。 ... [详细]
  • 2023年最新指南:如何在PHP中屏蔽警告和错误
    本文详细介绍了如何在PHP中屏蔽警告和错误,包括多种方法和最佳实践,帮助开发者提升代码质量和安全性。 ... [详细]
  • 在项目需要国际化处理时,即支持多种语言切换的功能,通常有两种方案:单个包和多个包。本文将重点讨论单个包的实现方法。 ... [详细]
  • Java EE 平台集成了多种服务、API 和协议,旨在支持基于 Web 的多层应用程序开发。本文将详细介绍 Java EE 中的 13 种关键技术规范,帮助开发者更好地理解和应用这些技术。 ... [详细]
  • 本文为初学者提供了一条清晰的学习路线,帮助他们逐步成长为优秀的Web开发人员。通过十个关键步骤,涵盖从基础到高级的各个方面,确保每位学习者都能找到适合自己的学习方向。 ... [详细]
  • PHP本地服务器搭建补充说明
    由于某些需求,我重新搭建了本地Web服务器,并发现之前的博客中存在一些遗漏。为了帮助读者更好地理解和操作,特此撰写本文进行补充。 ... [详细]
  • 尝试在 HP 计算机上使用 VMware Workstation Pro 安装 CentOS 6.7 时遇到错误,提示虚拟机配置为使用 64 位操作系统,但无法执行 64 位操作,原因是 Intel VT-x 被禁用。 ... [详细]
  • centos 7.0 lnmp成功安装过程(很乱)
    下载nginx[rootlocalhostsrc]#wgethttp:nginx.orgdownloadnginx-1.7.9.tar.gz--2015-01-2412:55:2 ... [详细]
  • 近期遇到了一个系统中在线文本编辑器上传本地图片时报服务器异常的问题。经过初步调试和排查,最终找到了解决方案。 ... [详细]
  • vsftpd配置(虚拟用户、匿名用户登录)
    一、ftp服务搭建(一)概述1.ftp连接及传输模式(1)控制连接TCP21,用于发送FTP命令信息 ... [详细]
  • Linux 防火墙与端口管理必备命令
    在使用 Linux 系统进行服务部署和问题排查时,防火墙和端口管理是不可或缺的操作。本文将详细介绍如何查看防火墙状态、端口占用情况,以及如何开放和关闭端口,帮助初学者更好地掌握这些技能。 ... [详细]
author-avatar
手机用户2602922981
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有