




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
IPv4技术在网络发展中起到了巨大的作用,不过随着时间的流逝它无论在网络地址的提供、服务质量、安全性方面都越来越力不从心,IPv6呼之欲出。由于IPv6和IPv4在许多地方有了本质的变化:不论在结构上还是系统工具的使用上。特别是在命令行下的操作也不大相同。另外一些IPv4的工具在IPv6中将不再可以使用,IPv6也有一些新的工具。所以这里我们详细介绍一下如何为主流网络操作系统配置Ipv6。使我们可以实现从IPv4到IPv6的快速过渡。一、 IPv4和IPv6技术简单对比: (1) IPv4可提供4,294,967,296个地址,IPv6将原来的32位地址空间增大到128位,数目是2的128次方。能够对地球上每平方米提供61023个网络地址,在可预见的将来是不会耗尽的。 (2) IPv4 使用地址解析通讯协议 (ARP) ,IPv6使用用多点传播 Neighbor Solicitation 消息取代地址解析通讯协议 (ARP) 。 (3) IPv4 中路由器不能识别用于服务质量的QoS 处理的 payload。IPv6中路由器使用 Flow Label 字段可以识别用于服务质量的 QoS 处理的 payload。 (4) IPv4的回路地址为: ,IPv6的回路地址为 : 000:0000:0000:0000:0000:0000:0000:0001 可以简写为 :1。 (5) 在IPv4中,动态主机配置协议( Dynamic Host ConfigurationProtocol,DHCP)实现了主机IP地址及其相关配置的自动设置。一个DHCP服务器拥有一个IP地址池,主机从DHCP服务器租借IP地址并获得有关的配置信息(如缺省网关、DNS服务器等),由此达到自动设置主机IP地址的目的。IP v6继承了IPv4的这种自动配置服务,并将其称为全状态自动配置(stateful autoconfiguration)。 (6) IPv4使用 Internet 群组管理通讯协议 (IGMP) 管理本机子网络群组成员身份,IPv6使用 Multicast Listener Discovery (MLD) 消息取代 IGMP。 (7) 内置的安全性。IPSec由IETF开发是确保秘密、完整、真实的信息穿越公共IP网的一种工业标准。IPsec不再是IP协议的补充部分,在IPv6中IPsec是IPv6自身所具有的功能。IPv4选择性支持IPSec,IPv6自动支持IPSec。 (8) 更好的QoS支持。QoS是网络的一种安全机制,通常情况下不需要QoS,但是对关键应用和多媒体应用就十分必要。当网络过载或拥塞时,QoS 能确保重要业务量不受延迟或丢弃,同时保证网络的高效运行。在IPv6 的包头中定义了如何处理与识别传输, IPv6 包头中使用 Flow Label 来识别传输,可使路由器标识和特殊处理属于一个流量的封包。流量是指来源和目的之间的一系列封包,因为是在 IPv6 包头中识别传输,所以即使透过 IPSec 加密的封包 payload,仍可实现对 QoS 的支持。二、在 Linux操作系统下IPv6配置: (1)加载ipv6模块 Linux在内核版本2.2.0以后就支持IPv6了,可查看命令test f /proc/net/if_inet6&running ipv6文件是否存在以确定你的系统是否支持IPv6如果没有,可尝试如下命令加载IPv6模组:# modprobe ipv6使用命令,见图1:Lsmod | grep i ipv6 图1 查看内核是否加载ipv6模块 如果出现图1界面表示内核加载ipv6模块。成功加载后就可以使用IPv6环境了。Lsmod指令,会列出所有已载入系统的模块。Linux操作系统的核心具有模块化的特性,应此在编译核心时,务须把全部的功能都放入核心。您可以将这些功能编译成一个个单独的模块,待需要时再分别载入。 (2)常用IPv6相关的命令:添加固定IPv6地址:# /sbin/ifconfig eth0 inet6 add 3ffe:ffff:0:f101:2/64 /* */ 显示现有路由表:#/sbin/ip -6 route show dev eth0 添加路由:# route -A inet6 add 2000:/3 gw 3ffe:ffff:0:f101:1 /* */ ICMP探测:ping6 用来测试简单传输发送 ICMPv6 响应请求并等待ICMPv6 响应包, ping6必需有适当的root权限才能使用。使用Ping命令检测网卡的IPv6地址是否有效,和IPv4不一样使用Ping6命令时必须指定一个网卡界面,否则系统经不知道将数据包发送到那个网络设备,I表示Interface、eth0 是第一个网卡、c表示回路,7表示Ping6操作七次。 # ping6 -I eth0 -c 7 fe80:2e0:18ff:fe90:9205 traceroute6通过向目标发送不同IP生存时间(TTL)值的会应的数据报,确定目标所采用的路由。#traceroute6 fe80:2e0:18ff:fe90:9205 racepath6用来追踪最大传输单元(MTU)的路径:#tracepath6 fe80:2e0:18ff:fe90:9205 (3)让系统自动加载ipv6模块(redhat linux) 修改 /etc/sysconfig/network文件,加入下列配置文本NETWORKING_IPV6=yes然后,运行命令 service network restart用命令ifconfig eth0查看ipv6地址信息:图2查看ipv6地址 注意图中第四行处显示IPv6地址(inet6 addr:fe80:20c:29ff:feb3:9726/64)证明IPv6已经加载。也可以在配置文件:/etc/modules.conf中加入一行:alias net?pf?10 ipv6 # automatically load IPv6 module on demand可以在图形界面下运行命令:“redhatconfignetwork”在“为此界面启用ipv6配置”打勾。在上篇文章中,主要介绍了Ipv6的基本概念,以及FreeBSD、Solaris系统IPv6配置,下面将介绍windows 2000/2003服务器的ipv6配置方法。五、Windows2000系统IPv6配置 Windows2000并不提供对IPv6协议的原始支持,但在下面地址:/downloads/details.aspx?FamilyID=27b1e6a6-bbdd-43c9-af57-dae19795a088&DisplayLang=en下载安装协议的补丁包来实现IPv6的基本功能。在补丁的文件目录下,有一名为hotfix.ini的文件,根据目前你的操作系统上所打的补丁,对其内容进行修改: 若为Windows2000+SP1 NtServicePackVersion256 若为Windows2000+SP2 NtServicePackVersion512 若为Windows2000+SP3 NtServicePackVersion768 在windows 2000下的IPv6安装过程中,不同的service pack有不同的方法。所以,在安装之前,需要先确定本机windows 2000系统中的sp的版本。 1. 首先安装Microsoft IPv6 Technology Preview for Windows 2000 如果你的机器只装了sp1 for win2000,请直接安装tpipv6-001205.exe。 如果你的机器装了sp2 ,sp3, sp4for win2000,请安装tpipv6-001205-SP2-IE6.zip。这个包解压之后(到现在为止,windows 2000的service pack最新版本为4)把hotfix.ini文件中VERSION段中的NTServicePackVersion=256改成 1024。然后运行hotfix.exe 。 2重启机器,并安装ipv6协议驱动程序 从控制面板中,进入“网络和拨号连接“中,右击“本地连接”,点击属性,打开“本地连接属性”窗口,其实这个就是你设置网卡时的属性窗口点击“安装”按钮,然后在弹出的窗口中,选择“协议”,并点击“添加.”,在弹出的窗口中,你会发现“Microsoft Ipv6 Protocol”,见图5。图5 “Microsoft Ipv6 Protocol” 选择这个选项,点击确定。到此为止tcp/ipv6协议栈安装完毕,出现在连接属性中见图6。图6 IPv6协议已经在列表中 3设置ipv6地址 停止协议栈命令: net stop tcpip6 启动协议栈命令,见图7: net start tcpip6图7 IPv6完成安装 4.配置ipv6地址 ipv6 adu 2/3ffe:3218:6:1 5.配置路由 ipv6 rtu :/0 2/:2 6.查看是否安装成功: 运行ipv6 if,如果可以看到图8类似如下结果,即已经安装上了ipv6协议栈:图8 安装上了ipv6协议栈 说明:默认情况下Windows 2000下的IPv6协议栈共有4个地址接口,其中: 1号接口:本地回环接口,类似于IPv4下的地址; 2号接口:IPv6兼容地址和6to4隧道虚拟接口(假如本地IPv4地址是1,则兼容地址为:1); 3号接口:6over4隧道虚拟接口。 4号接口:本地连接接口。可以通过手工和是邻居发现机制配置非保留的全局IPv6地址。这四个接口的详细信息可以通过ipv6 if 命令看到。 7.你可以建立一个.cmd脚本,在每次启动时自动运行或者手动运行 net start tcpip6 ipv6 adu 2/3ffe:3218:6:1 ipv6 rtu :/0 2/:2 8.手工配置6to4隧道 首先,启动节点上的6to4隧道。键入命令ipv6 rtu 2002:/16 2(IPv6 rtu命令用来添加路由,由于2002:/16是默认的6to4前缀,因此实质上是启动网关)。 然后,配置IPv6的6to4地址。注意你所使用的IPv4地址必须是合法地址。例如转化为16进制为CA70:8503。在2接口上写入地址:ipv6 adu 2/2002:CA70:8503: CA70:8503。这时该主机可以同大部分6to4的站点进行通信。例如微软的2002:836b:9820:836b:9820。 最后,配置6to4中继路由器的地址,可以使用微软的。添加路由:ipv6 rtu :/0 2/: pub life 1800,该路由生命期为30分钟。这时,就应该可以ping通6bone的实验站点了。 9.手工配置6to4网关 Window下的路由器的转发和广播功能是分开的,可以手工设置。forw是路由的转发功能,adv是路由器的路由广播功能。由于2接口是虚拟接口,所以不存在广播的问题。 ipv6 ifc 2 forw ipv6 ifc 3 forw adv ipv6 ifc 4 forw adv 这样,该路由器就会向子网内每隔30分钟广播一次路由,接到路由广播的主机可以通过配置默认路由经该网关访问6to4站点。六、WinXP系统IPv6配置 1. 在字符界面下,运行命令“ipv6 install” 2. 测试:ping6 ipv6地址 如果能够看到如下类似信息,即已经成功: 图9 WinXP系统的ping命令操作 3. 卸载ipv6,使用命令:“ipv6 uninstall”七、windows 2003系统IPv6配置 Windows Server 2003已经正式支持IPv6,因为已经集成了IPv6协议栈,所以跟windows 2000比起来就相对简单了,至少可以不用下载IPv6协议软件包。 Ipv6.exe 将被 netsh interface ipv6 和netsh interface ipv6 isatap 之中的命令所取代。因为在Windows Server 2003家族之中不再包含Ipv6.exe工具。下面列出了所有Ipv6.exe命令及其等价的Netsh命令。 1.通过图形界面安装ipv6协议栈:安装方法如下:点击“开始”,点击“控制面板”,然后双击“网络连接”。 右击本地连接,然后点击“属性”。 点击“安装”。 在“选择网络组件类型”对话框中,点击“协议, ”,然后点击“添加”。 在“选择网络协议 ”对话框中,点击“Microsoft TCP/IP version 6”,然后点击“确定”。 点击“关闭”,保存对网络连接所做的修改。 2. 通过命令方式安装ipv6协议栈:安装方法如下:打开 “命令行窗口”。 在命令行界面,输入“netsh interface ipv6 install“命令。如图10。IPv6自动完成安装。 图10 通过命令行加载ipv6协议栈 3.查看ipv6地址 使用ipconfig命令查看ip地址,ipconfig 命令是 winipcfg 命令的命令行等价物,在 Windows Millennium Edition、Windows 98 和 Windows 95 中可用。尽管 Windows XP 和 Windows Server 2003 家族不包括等价于 winipcfg 命令的图形界面,但是可以使用“网络连接”查看和更新 IP 地址。Ipconfig命令用来显示所有当前的 TCP/IP 网络配置值、刷新动态主机配置协议 (DHCP) 和域名系统 (DNS) 设置。使用不带参数的 ipconfig 可以显示所有适配器的 IPv6 地址或 IPv4 地址、子网掩码和默认网关。(说明:该命令最适用于配置为自动获取 IP 地址的计算机。它使用户可以确定哪些 TCP/IP 配置值是由 DHCP、自动专用 IP 寻址 (APIPA) 和其他配置配置的。 只有当“Internet 协议 (TCP/IP)”协议在 网络连接中网络适配器的属性中安装为组件时,该命令才可用)见图11 。图11 查看ipv6地址 4. Ping本地ipv6地址 Ping 命令有助于验证 IP 级的连通性。发现和解决问题时,可以使用 Ping 向目标主机名或 IP 地址发送 ICMP 回应请求。需要验证主机能否连接到 TCP/IP 网络和网络资源时,请使用 Ping。也可以使用 Ping 隔离网络硬件问题和不兼容配置。 通常最好先用 Ping 命令验证本地计算机和网络主机之间的路由是否存在,以及要连接的网络主机的 IP 地址。注意在windows 2003中没有ping6 命令,使用-6 选项指定将 IPv6 用于 ping。不需要用该参数识别带有 IPv6 地址的目标主机。仅需要它按名称识别主机。见图12。图12 Ping本地ipv6地址 5. 卸载ipv6,使用命令:“netsh interface ipv6 uninstall” 6. 启用 IPv6 路由 若要启用 IPv6 路由,必须使用 命令:“netsh interface ipv6 set interface”在相应接口上启用转发和公告,然后使用命令:“netsh interface ipv6 add routes”配置要发布的子网前缀。八.未来操作系统的ipv6情况 虽然好几个Windows发布版都支持IPv6,但是,Windows Vista将是第一个默认支持IPv6协议的Windows发布版。微软还没有放弃当前版本的TCP/IP协议(IPv4)。微软很难做出决定如何在Vista中支持TCP/IP协议。一方面,IPv4是在70年代发明的。虽然IPv4已经延期了很多次,但是,这个协议已经过时了。另一方面,全世界都在频繁使用IPv4协议,因此微软不能简单地停止支持这个协议。微软采取的替代方法是创建一个双IP层结构。在英语中,这个含义是Vista将同时支持IPv4和IPv6。事实上,这两个协议共享相同的传输层和成帧层。 由于微软将通过默认启用IPv6功能的方法突出这个协议的重要性,你也许会很想知道使用IPv6有什么好处。正如我早些时候指出的那样,这个协议的主要好处是具有更大的地址空间。IPv6提供了128位的地址空间,相比之下,IPv4仅提供了32位的地址空间。如果全世界采用IPv6协议,就不会存在公共可访问的网络地址不够用的情况了。 IPv6的另一个好处是其速度比IPv4快得多。IPv6使用的包头(packet header)比IPv4使用的包头更合理。IPv6支持分层次的路由。这就意味着路由器发送IPv6数据包的速度比发送IPv4数据包的速度更快。现在的主流操作系统,如Windows 2003和RHEL4 Linux,都配置了IP的双栈。结构如图13。 图13 双栈结构 九、异构网络ipv6连接 以Linux (rhel 4.0)与windows 2000为例。 Linux 计算机ipv4地址:6, ipv6地址:fe80:250:fcff:fe56Windows 2000 计算机ipv4地址:5, ipv6地址:fe80:250:fcff:fe46 1. ping操作 从Windows 2000 计算机使用ping6 命令发送ICMP封包到Linux 计算机的ipv6地址:fe80:250:fcff:fe56。 2. 使用ethereal分析封包 ethereal命令是一个强大的Ethernet网络监测工具,可在实时模式或离线模式中用来捕获和分析网络通信。该工具通过提供完全报文级协议解码来从tcpdump端提取信息,该工具自认为可支持许多流行的网络协议并且有一个易用的报文捕获界面。另外,ethereal支持许多其他商业软件的捕获格式,所以用户可继续使用他们现有的软件并用ethereal来处理这些数据文件。该工具提供一个强健的GUI界面,用来整理网络数据的捕获以及随后的网络通信浏览。 安装 1)首先安装winpcap软件包,下载地址http:/netgroup-serv.polito.it/winpcap/install/Default.htm 2)安装ethereal,下载地址/,安装文件: 启动ethereal以后,选择菜单Capature-Start,就OK了。当你不想抓的时候,按一下stop,抓的包就会显示在面板中,并且已经分析好了。如图14:图14 网络中的ICMP(ping 命令)数据包已经IPV6格式传送 可以看到网络中的ICMP(ping 命令)数据包已经是IPV6格式传送。总结: 上面所讲的,基本上涵盖了当今主流主流服务器操作系统配置Ipv6的情况,在安装了IPv6之后,接下来的问题就是我们如何来使用它。IPv4网络不可能在一夜之间全部转换为IPv6网络。将IPv6数据报文封装在IPv4报文中,由IPv6/IPv4双栈路由器和主机在IPv4路由域内传递报文的隧道方式,是过渡时期的最重要解决途径。网管工作必须考虑如何对隧道进行有效管理的问题。相对骨干网,接入网部分的管理工作更为复杂。在这里不多说,以后另外专文介绍。图3 图形界面下让系统自动加载ipv6模块 其他Linux发行版本:首先确认linux内核已编译进了ipv6选项,如果ipv6协议作为模块方式编译,可运行modprobe ipv6装入协议栈,并根据需要安装iproute软件包。可阅读Linux IPv6 HOWTO和相关产品文档获得更详细的信息。 (4)使用ipv6地址访问Apache web服务器 Apache服务器2.0系列在所有能够由Apache Portable Runtime库提供IPv6支持的系统上, Apache默认获得IPv6侦听套接字。访问Apache服务器时应当使用如下格式:http:/ipv6 -address:port/ 结果见图4(只要浏览器也要支持ipv6)。图4 使用ipv6地址访问web服务器 另外再配置虚拟主机时IPv6的地址必须放入方括号中指定,否则作为可选项的端口号将无法确定。一个IPv6的示例如下:ServerAdmin DocumentRoot /www/docs/ServerName ErrorLog logs/-error_logTransferLog logs/-access_log 每个虚拟主机必须对应不同的IP地址、端口号或是不同的主机名。在第一种情况下,服务器所在物理机器必须配置为可以为多个地址接受IP包。(在机器没有多个网络硬件界面的情况下,如果您的操作系统支持,您可以使用ifconfig alias命令来达到这个目的)。 (5)配置Ipv6版本iptables防火墙 1、安装: Iptables是基于Linux2.4内核的防火墙。在它取代了2.2内核的ipchains和2.0系列之前的ipfwadm。如果你想使用任何形式的防火墙都需要安装iptables。 (a) 下载安装Ipv6版本的iptables, (b) : #wget #rpm ivh iptables-ipv6-1.2.7a-1ark.i586.rpm 2、配置iptables iptables 是与主流的 2.4.x 版本 Linux 内核集成的 IP 信息包过滤系统。如果 Linux 系统连接到因特网或 LAN、服务器或连接 LAN 和因特网的代理服务器,则该系统有利于在 Linux 系统上更好地控制 IP 信息包过滤和防火墙配置。netfilter/iptables IP 信息包过滤系统是一种功能强大的工具,可用于添加、编辑和除去规则,这些规则是在做信息包过滤决定时,防火墙所遵循和组成的规则。这些规则存储在专用的信息包过滤表中,而这些表集成在 Linux 内核中。在信息包过滤表中,规则被分组放在我们所谓的链(chain)中。我马上会详细讨论这些规则以及如何建立这些规则并将它们分组在链中。 (1)清理旧规则: #ip6tables -FXZ 参数说明: -F :清除所有的已订定的规则; -X :杀掉所有使用者建立的表(table)。 -Z :将所有的链(chain) 的计数与流量统计都归零。 (2)建立政策 #ip6tables -t tables -P INPUT,OUTPUT,FORWARD, PREROUTING,OUTPUT,POSTROUTING ACCEPT,DROP -p TCP,UDP -s IP/network -sport ports -d IP/network -dport ports -j 参数说明: -t :定义表( table)。 tables :table表的名称,-P :定义政策( Policy )。 INPUT:数据包为输入主机的方向; OUTPUT :数据包为输出主机的方向; FORWARD:数据包为不进入主机而向外再传输出去的方向; PREROUTING :在进入路由之前进行的工作; OUTPUT :数据包为输出主机的方向; POSTROUTING:在进入路由之后进行的工作。TCP :TCP协议的数据包。 UDP :UDP协议的数据包; -s :来源数据包的 IP 或者是 网络。 -sport:来源数据包的端口( port)号。 -d :目标主机的 IP 或者是网络。 -dport:目标主机端口的 (port) 号。ACCEPT :接受该数据包。 DROP :丢弃数据包。 Linux 支持使用 Netfilter 6 子系统和 ip6tables 命令的 IPv6 防火墙规则。使用 ip6tables 的第一步是启动 ip6tables 服务。它可以使用以下命令进行: service ip6tables start 注意:你必须关闭 iptables 服务才能专门使用 ip6tables 服务:service iptables stopchkconfig iptables off要使 ip6tables 在系统引导时默认启动,使用 chkconfig 来改变服务的运行级别状态。chkconfig -lEVEl 345 ip6tables on 其语法在各方面都和 iptables 相同,只不过 ip6tables 支持128位的地址。例如:在识别 IPv6 的网络服务器器上的 SSH 连接可以使用以下规则来启用: ip6tables -A INPUT -i eth0 -p tcp -s 3ffe:ffff:100:1/128 -dport 22 -j ACCEPT关于 IPv6 联网的详情,请参阅 IPv6 的信息页:/。其他支持ipv6应用的软件包括:nmap :/nmap ,Tcpdump ( ) ,bind(DNS服务器)linux系统目前支持ipv6的服务器软件已经非常多,常用的软件如opensshd/sshd,apache,telnetd, iptables-ipv6,nmap等。如果你想查看在Ipv6协议网络工作的Linux程序可以访问:core.fi/pekkas/linux/ipv6/ 这里能找到很多有IPv6支持的RPM包。 (6)配置 Linux FTP 服务器 vsftpd 以支持 IPv6 vsftpd 服务器默认附带有 Red Hat Enterprise Linux (RHEL)。让我们配置服务器来监听和接受 IPv6 地址。 首先,以 root 用户登录然后打开 vsftpd.conf,该文件通常位于 /
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 政工科工作汇报
- 窃血综合征的护理
- 2026届浙江省杭州西湖区四校联考英语九年级第一学期期末学业水平测试模拟试题含解析
- 大健康员工培训方案
- 2026届安徽省淮南市潘集区化学九年级第一学期期中联考模拟试题含解析
- 2026届福建省各地英语九上期末监测模拟试题含解析
- 2026届山东省德州市陵城区化学九年级第一学期期末质量检测模拟试题含解析
- 2026届江苏省南京鼓楼区化学九年级第一学期期中质量检测模拟试题含解析
- 湖北省武汉市蔡甸区誉恒联盟2026届九年级英语第一学期期末预测试题含解析
- 2025年急救抢救烧伤病情处理策略及答案解析
- 成都产业投资集团有限公司所属产业投资板块企业2025年招聘投资管理等岗位的考试参考试题及答案解析
- 乡镇综合行政执法队队长试用期满转正工作总结
- 2025天津医科大学眼科医院第三批招聘1人备考考试试题及答案解析
- 2025年北京市高考英语试卷真题(含答案解析)
- 医务科依法执业自查表
- 征兵宣传主题PPT
- 全桥LLC自动计算表格
- 高中数学竞赛讲义-高中数学竞赛
- YB/T 100-1997集成电路引线框架用4J42K合金冷轧带材
- GB/T 19816.3-2005涂覆涂料前钢材表面处理喷射清理用金属磨料的试验方法第3部分:硬度的测定
- 机械制图基础培训课件
评论
0/150
提交评论