为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

虚拟机3中网络连接方式

2017-10-07 17页 doc 110KB 14阅读

用户头像

is_751406

暂无简介

举报
虚拟机3中网络连接方式虚拟机3中网络连接方式 很多朋友都用vmware来测试不同的系统,我结合自己的经验谈一下对网络设置的理解,不对的地方请指正。 bridge: 1.gif 这种方式最简单,直接将虚拟网卡桥接到一个物理网卡上面,和linux下一个网卡 绑定两个不同地址类似,实际上是将网卡设置为混杂模式,从而达到侦听多个IP的能力。 在此种模式下,虚拟机内部的网卡(例如linux下的eth0)直接连到了物理网卡所在的网络上,可以想象为虚拟机和host机处于对等的地位,在网络关系上是平等的,没有谁在谁后面的问题。 使用这种方式很简单,前...
虚拟机3中网络连接方式
虚拟机3中网络连接方式 很多朋友都用vmware来测试不同的系统,我结合自己的经验谈一下对网络设置的理解,不对的地方请指正。 bridge: 1.gif 这种方式最简单,直接将虚拟网卡桥接到一个物理网卡上面,和linux下一个网卡 绑定两个不同地址类似,实际上是将网卡设置为混杂模式,从而达到侦听多个IP的能力。 在此种模式下,虚拟机内部的网卡(例如linux下的eth0)直接连到了物理网卡所在的网络上,可以想象为虚拟机和host机处于对等的地位,在网络关系上是平等的,没有谁在谁后面的问题。 使用这种方式很简单,前提是你可以得到1个以上的地址。对于想进行种种网络实验的朋友 不太适合,因为你无法对虚拟机的网络进行控制,它直接出去了。 nat方式: 2.gif 这种方式下host内部出现了一个虚拟的网卡vmnet8(默认情况下),如果你有过 做nat服务器的经验,这里的vmnet8就相当于连接到内网的网卡,而虚拟机本身则相当于运 行在内网上的机器,虚拟机内的网卡(eth0)则独立于vmnet8。 你会发现在这种方式下,vmware自带的dhcp会默认地加载到vmnet8界面上,这样虚拟机就可以使用dhcp服务。更为重要的是,vmware自带了nat服务,提供了从vmnet8到外网的地址转 换,所以这种情况是一个实实在在的nat服务器在运行,只不过是供虚拟机用的。 很显然,如果你只有一个外网地址,此种方式很合适。 hostonly: 3.gif 这应该是最为灵活的方式,有兴趣的话可以进行各种网络实验。和nat唯一的不同的是,此 种方式下,没有地址转换服务,因此,模认情况下,虚拟机只能到主机访问,这也是hostonly的名字的意义。 默认情况下,也会有一个dhcp服务加载到vmnet1上。这样连接到vmnet1上的虚拟机仍然可以设置成dhcp,方便系统的配置. 是不是这种方式就没有办法连接到外网呢,当然不是,事实上,这种方式更为灵活,你可以使用自己的方式,从而达到最理想的配置,例如: a。使用自己dhcp服务:首先停掉vmware自带的dhcp服务,使dhcp服务更为统一。 b。使用自己的nat,方便加入防火墙。windows host可以做nat的方法很多,简单的如windows xp的internet共享,复杂的如windows server里的nat服务。 c. 使用自己的防火墙。因为你可以完全控制vmnet1,你可以加入(或试验)防火墙在vmnet1和外网的网卡间。 从以上可以看出,hostonly这种模式和普通的nat server带整个内网上网的情形类似,因此你可以方便的进行与之有关的实验,比如防火强的设置等。 三者的区别: BRIDGED: bridge就是“桥”的意思,说起桥接,就不能不说局域网。比如我们有两个局域网络,他们的ip段都处于192.168.0.*,同时,我们希望把这两个网络链接起来,这中情况下,我们就可以采用桥接。这个时候,“桥”就是一个主机,这个机器拥有两块网卡,分别处于两个局域网中,同时在“桥”上,运行着程序,让局域网A中的所有数据包原封不动的流入B,反之亦然。这样,局域网A和B就无缝的在链路层连接起来了(当然要保证两个局域网没有冲突的 IP)。这就是桥的作用,在链路层无缝的沟通两个局域网。 而VMWare的桥也是同样的道理,只不过,本来作为硬件的一块网卡,现在由 VMWare软件虚拟而来罢了~当采用桥接时,VMWare会虚拟一块网卡和真正的物理网卡就行桥接,这样,发到物理网卡的所有数据包就到了VMWare 虚拟机,而由VMWare发出的数据包也会通过桥从物理网卡的那端发出,这样,如果物理网卡可以上网,那么桥接的软网卡也没有问题了,这就是桥接上网的原理了。 在桥接时,VMWare网卡和物理网卡应该处于同一ip网段,所以在虚拟机中ping物理网卡ip,或者在主机总ping虚拟机网卡ip,都可以ping通。 NAT: nat就是network address translate的简称。网络地址转换,这个技术是为了让象192.168.*.*这样的私有ip段能够访问internet而开发的。私有ip段,可以由任何公司和个人使用,所以世界上有无数电脑使用了192.168.0.111这样的地址,而这个地址绝对不能出现在internet上,因为这肯定会造成路由的失败。但是,ip地址的稀缺让我们必须采用这种共享ip的, 同时还要允许这些机器访问internet。这样的前提下,NAT就应运而生了。 NAT技术应用在internet网关和路由器上,比如192.168.0.111这个地址要访问 internet,它的数据包就要通过一个网关或者路由器,而网关或者路由器拥有一个能访问internet的ip地址,这样的网关和路由器就要在收发数据包时,对数据包的IP层数据进行更改(即 NAT),以使私有网段的主机能够顺利访问internet。 我想到的一个最典型的例子,就要算我的大学宿舍了。宿舍内部网段192.168.1.× ,通过路由器进入校园局域网10.10.110.×,然后通过学校网关,进入internet。这个过程中,宿舍的路由器做了一次NAT,而学校的网关又做了一次NAT。 VMWare的NAT上网采用的技术是一样的,它在主机和虚拟机之间用软件伪造出一块网卡,这块网卡和虚拟机的ip处于一个地址段。同时,在这块网卡和主机的网络接口之间进行NAT。虚拟机发出的每一块数据包都会经过虚拟网卡,然后nat,然后由主机的接口发出。 由于在这种条件下,虚拟机和主机不在同一个ip段,但是主机相当于虚拟机的网关,所以虚拟机能ping到主机的ip,但是主机ping不到虚拟机的ip。 Host-only: 顾名思义,这种技术提供的是主机和虚拟机之间的网络互访,而不是虚拟机访问internet的技术。如果,你只想让虚拟机和主机之间有数据交换,而不想让虚拟机访问internet,就要采用这个设置了。 Host-only的条件下,VMWare在真正的Windows系统中,建立一块软网卡。这块网卡可以在网络连接中看到,这块网卡的作用就是使windows看到虚拟机的IP。 由于,这种技术就是将主机和虚拟机通过一个ip段的网卡联系起来,所以双方都可以ping到对方。 无论在什么条件下,只要主机能上网,才用NAT技术,都可以使虚拟机访问internet;只有在主机网卡处在一个可以访问internet的局域网中的时候,虚拟机才能通过bridge访问internet;Host-only技术只用于主机和虚拟机互访,于访问internet无关。 2. 在使用VMware Workstation创建虚拟机时,创建的虚拟机中可以包括网卡。你可以根据需要选择使用何种虚拟网卡,从而表明想要连接到那个虚拟交换机。在VMware Workstation中,默认有3个虚拟交换机,分别是VMnet0(使用桥接网络)、VMnet1(仅主机网络)和VMnet8(NAT网络),还可以根据需要添加VMnet2,VMnet7和VMnet9等7个虚拟机交换机,而在VMware Workstation 5以后的版本中,还可以使用Team中的提供的虚拟交换机。 Team中的虚拟机交换机与VMnet0,VMnet9虚拟交换机不同之处在于,Team中的交换机与主机网络不发生关系,而VMnet0,VMnet9虚拟交换机是与主机相连。并且,Team中的虚拟交换机可以限制网络速度。 vmnet0,实际上就是一个虚拟的网桥,这个网桥有很若干个端口,一个端口用于连接你的Host,一个端口用于连接你的虚拟机,他们的位置是对等的,谁也不是谁的网关。所以在Bridged模式下,你可以让虚拟机成为一台和你的Host相同地位的机器。 vmnet1是一个Host-Only网络模式,这是用于建立一个与世隔绝的网络环境所用到的,其中vmnet1也是一个虚拟的交换机,交换机的一个端口连接到你的Host上,另外一个端口连接到虚拟的DHCP服务器上(实际上是vmware的一个组件),另外剩下的端口就是连虚拟机了。虚拟网卡“VMWare Virtual Ethernet Adapter for VMnet1”作为虚拟机的网关接口,为虚拟机提供服务。在虚拟机启动之后,如果你用ipconfig命令,你会很清楚的看到,你的默认网关就是指向“VMWare Virtual Ethernet Adapter for VMnet1”网卡的地址,这里没有提供路由主要表现在没有提供NAT服务,使得虚拟机不可以访问Host-Only模式所指定的网段之外的地址。 vmnet8是一个NAT方式,最简单的组网方式了,从主机的“VMWare Virtual Ethernet Adapter for VMnet8”虚拟网卡出来,连接到vmnet8虚拟交换机,虚拟交换机的另外的口连接到虚拟的NAT服务器(这也是一个Vmware组件),还有一个口连接到虚拟DHCP服务器,其他的口连虚拟机,虚拟机的网关即是“VMWare Virtual Ethernet Adapter for VMnet8”网卡所在的机器。同样,用ipconfig也可以看出来,你的虚拟机的默认网关也指向了你的“VMWare Virtual Ethernet Adapter for VMnet8”虚拟网卡地址。相比之下,可以看出来,NAT组网方式和Host-Only方式,区别就在于是否多了一个NAT服务。 3. 1.bridge : 默认使用 vmnet0 将虚拟机的 ip 设置与主机同网段未使用 ip, 其余与主机 相同 : 例如主机 ip 是 10.70.54.31, 设置虚拟机 ip 为 10.70.54.22 。 netmask,broadcast,gateway,dns 都与主机相同即可实现虚拟机 <---> 主机 虚拟机 <----> 互联网 通信。 2.nat : 默认使用 vmnet8 将虚拟机设置成使用 dhcp 方式上网 ,windows 下选择 " 自动获取 ip",linux 下开启 dhcp 服务即可 也可以手动设置 : ip 设置与 vmnet8 同网段 ,gateway 设置成 vmnet8 的 gateway(/etc/vmware/vmnet8/nat/nat.conf) 中可以查到 vmnet8 的 gateway, 通常是 xxx.xxx.xxx.2 。 netmask,broadcast 设置与 vmnet8 相同 ,dns 设置与主机相同。 例如 vmnet8 ip:172.16.249.1 gw :172.16.249.2 虚拟机设置 : ip :172.16.249.100 gw: 172.16.249.2 3.host-only : 默认使用 vmnet1 将虚拟机 ip 设置与 vmnet1 同网段 ,gateway 设置成 vmnet1 的 ip, 其余设置与 vmnet1 相同 ,dns 设置与主机相同 例如 vmnet1 ip :172.16.245.1 虚拟机设置 : ip :172.16.245.100 gateway :172.16.245.1 这样就实现了虚拟机 <---> 主机 通信 , 但是 虚拟机 <---> 互联网 仍无法通信 虚拟机与互联网通信: 1. 开启主机路由功能 2. 设定 iptables ,使主机成为一台 nat serve r 1. echo 1 >/proc/sys/net/ipv4/ip_forward 这样就主机就具有了路由功能 2. iptables -t nat -A POSTROUTING -o eth0 -s 172.16.245.0/24 -j MASQUERADE 这条规则意思是将来自 172.16.245.0/24 封包的来源 ip 伪装成 eth0 的 ip ,实现虚拟机与互联网通信 如果网络接口是 ppp+ 或 pppoe 则需要修改成 -o pppoe 当然 -s 172.16.245.0/24 也要根据实际情况修改 虚拟机的网络设置(原理篇) 在正式开始之前,我想有必要先来学习一些必要的网络知识。否则,在不懂得任何原理的情况下依葫芦画瓢虽然可解一时之需要,但遇到具体情况改变的情况下就只能干瞪眼了。由于篇幅限制,这里只讲和VMware设置有关的一点简单网络知识。 1,什么是网络, Internet 是指"互连网",好象这句话说的有点多余,不过确实有很多人对他有错误的理解,"互连网"是指一个个网络互连,而不是像有些人想象的那样把一台台电脑杂乱无章的互连。当我们需要用电脑和远方的电脑通讯的时候,先把本地电脑组成一个网络,当然,远方的电脑也要组成一个网络,在把这两个网络"互连"起来,组成 "互连网"。用电话线和MODEM拨号上网的时候是通过电话线先把自己的电脑连到ISP(Internet Service Provider 网络服务提供商)的网络中,再经过ISP的网络和世界各地的电脑通信。 2,电脑如何通过网络传递数据, 每一个网络需要一个网络地址,网络中的电脑需要一个在网络中唯一确定的标识,网络号和电脑的标识号组成了IP地址,所以IP地址是由网络号和主机号组成的。当你的电脑要和其他的电脑通信的时候,电脑会先根据IP地址和子网掩码确定目标主机是在本地网络中还是在远程网络中,如果在本地网络中则直接把一个包含信息的IP 数据包发送到本地网络上,目标主机会检测到并接收,如果目标主机在远程网络则需要通过一台被称为网关的的电脑转发到远程网络,网关(geteway)可以看做是连接网络和网络的桥梁,网关的概念很广,这里为了简化起见,我们暂且认为它和路由器是同一个概念。路由器(router)是一种连接网络和网络,并选择IP数据包传送的路径的一台特殊计算机。很多情况下网关的概念等同于路由 器。 3,网络中电脑的IP地址有何要求, 在同一个网络中,每台电脑必须具有相同的网络号,这样电脑才认为目标主机是在本网络中并且可以正确送达,如果网络号不同,即使目标主机已经用网线连到本网络中数据也不能直接送达,即使这两台电脑近在咫尺,在电脑看来仍旧是一台远程电脑.比如一个网络的网络号为192.168.0,则该网络中的计算机的IP地址必须以192.168.0开头。假如要传送一个数据包到网络号为192.168.1的网络,则必须通过路由器转发,如果该网络中没有路由器,则发送失败。 (网卡、调制解调器等联网设备称因此,为了连接两个网络,一台路又器至少要有两个网络接口 为网络接口)。网络和路由器的关系见下图: --------------- -------------- -------------- | 网络A | | 路由器 | | 网络B | | | | | | | | ?--|-----------|--? ?--|----------|--? | | 1 | | 2 3 | | 4 | --------------- -------------- -------------- 图 一 图中的小方框表示网卡或其他网络接口。 可以看到路由器至少有两个网络接 口。 假设网络A的地址为192.168.0 网卡1的地址为192.168.0.1 网络B的地址为192.168.1 网卡4的地址为192.168.1.1 则路由器上的网卡2必须属于网络 192.168.0 地址为192.168.0.x (x为任意小于255的数) 路由器上的网卡3必须属于网络 192.168.1 地址为192.168.1.x (x为任意小于255的数) 就是说,路由器既属于网络A,又属于网络B,这样才起到桥梁的作用。 当数据从网络A发往网络B时,路由器从网卡2接收数据,经过改装后通过网卡3发送数据到网络B。 这样,我们称网卡2的地址 192.168.0.x为网络A的网关 网卡3的地址 192.168.1.x为网络B的网关 4,VMware虚拟机提供了那些虚拟网络设备, 默认安装的情况下VMware提供了虚拟网卡vmnet1和vmnet8,还有在虚拟系统上的虚拟网卡 "AMD PCNET Family PCI Ethernet Adapt er" 请注意,vmnet1和vmnet8是主系统上虚拟设备,用ifconfig命令可以看到,而"AMD PCNET Family PCI Ethernet Adapter"是虚拟系统上的虚拟设备,在安装完虚拟系统后可以在设备管 于虚拟系统,是虚理器中看到,前两个隶属于真实系统,是你的真实电脑中的设备,后一个隶属拟电脑中的设备,不要搞混淆 。 --------------- -------------- -------------- | 网络A | | 路由器 | | 网络B | | | | | | | | ?--|-----------|--? ?--|----------|--? | | 1 | | 2 3 | | 4 | --------------- -------------- -------------- ---------------- ------------------------- -------------- | 虚拟系统 | | 主系统(路由器) | | 真实网络 | | | | | | | | ?--|-----------|--? ?<--->?-----|------|--? | |AMD PCNET卡 | |vmnet1 vmnet8 真实网卡 | | 4 | ---------------- ------------------------- -------------- 图 二 让我们来和上面的网络和路由器的关系做一个 比对。 可以看到要想虚拟系统和主系统通信必须使AMD PCNET 网卡和vmnet1组成一个网络 。而vmnet1本来就在主系统中,系统可以直接访问,所以主系统又充当了路由器的功能,只要有这两个虚拟设备主系统和虚拟系统就可以通讯。 关键在于三点: 1.确定网卡AMD PCNET和vmnet1的网络号相同。 2.在虚拟系统里设置网络属性,把网关地址设为vmnet1的地 址。 3.开启主系统的路由功能,使它成为一台路由器。 事实上,如果你只需要虚拟系统和主系统通信,而不需要和主系统所在的真实网络上的其他主机通信的话只要满足第一点就可以了。因为满足第一点,主系统和虚拟系统就在同一网络中了,不需要路由器便可通信。但是大多数情况下我们需要虚拟系统和主系统所在的真实网络通信,这就需要满足其他两点了。 虚拟机的网络设置(实施篇) 1, 我们先来让虚拟系统和主系统联系上。 在VMware安装的时候安装程序会自动给vmnet1分配一个IP地址,下面是笔者 电脑上例子: vmnet1 Link encap:Ethernet HWaddr 00:50:56:C0:00:01 inet addr:192.168.221.1 Bcast:192.168.221.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:191 errors:0 dropped:0 overruns:0 frame :0 TX packets:63 errors:0 dropped:0 overruns:0 carri er:0 collisions:0 txqueuelen:100 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b) 在第二行可以看到安装程序给vmnet1分配的IP地址为192.168.221.1(注意每次安装VMware IP地址是随机分配的,实际的情况与这里的例子会不同)。即虚拟网卡vmnet1属于网络192.168.221。因此,我们需要启动虚拟系统,设置网络属性,把虚拟系统的网卡"AMD PCNET Family PCI Ethernet Adapter"的IP地址设置为192.168.221.x (x为除1以外2~254之间的任意数字笔者把它设置为2),把网关设置为vmnet1的地址:192.168.221.1(如果不和外界真实网络通信的话网关可以不设 ) windows 2000和XP 设置后立即生效,win98需要重新启动,linux需要重新启动网络服务 :#service network resta rt 在主系统上ping一下虚拟系统 : #ping -c 3 192.168.221.2 PING 192.168.221.2 (192.168.221.2) from 192.168.221.1 : 56(84) bytes of data. 64 bytes from 192.168.221.2: icmp_seq=1 ttl=128 time=6.91 ms 64 bytes from 192.168.221.2: icmp_seq=2 ttl=128 time=0.425 ms 64 bytes from 192.168.221.2: icmp_seq=3 ttl=128 time=0.527 ms --- 192.168.221.2 ping statistics --- 3 packets transmitted, 3 received, 0% loss, time 2001m s rtt min/avg/max/mdev = 0.425/2.623/6.917/3.036 ms yeah!通了~ 再在虚拟系统上ping主系统: C:\>ping 192.168.221.1 Pinging 192.168.221.1 with 32 bytes of data: Reply from 192.168.221.1: bytes=32 time<10ms TTL=64 Reply from 192.168.221.1: bytes=32 time<10ms TTL=64 Reply from 192.168.221.1: bytes=32 time<10ms TTL=64 Reply from 192.168.221.1: bytes=32 time<10ms TTL=64 Ping statistics for 192.168.221.1: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-secon ds:Minimum = 0ms, Maximum = 0ms, Average = 0ms yeah!又通了~主系统和虚拟系统顺利联系上啦~ 2, 让虚拟系统和主系统所在的真实网络通信 首先在你的电脑上需要有一块与真实网络相连真实的网卡(如图二所示‎‎)。vmnet8就在与真实网络通讯的时候起作用了,vmnet8会和真实网卡对应起来,虚拟系统要发送数据包到真实网络中的时候,真实系统是一台路由器,首先数据发到虚拟网卡vmnet1,然后经过路由器(这里就是主系统linux)发到 vmnet8,由于vmnet8和真实网卡是对应起来的,这一机制是有vmware完成的,所以发到vmnet8上的网卡就等于传送到了真实网卡上,然后数据包再通过真实网卡发送到真实网络,整个过程请看图二。如果你的系统上有两块以上的真实网卡,在安装的时候安装程序会询问把虚拟网卡对应到哪个真实网卡上。可以根据实际情况选择 。 把vmnet8的IP地址设置为和真实网卡在同一网络的地址,假设真实网络的网络号为192.168.0,真实网卡的IP地址为192.168.0.1则可设置vmnet8的IP地址为192.168.0.2 在linux中方法如下: #ifconfig vmnet8 down #ifconfig vmnet8 192.168.0.2 up 回顾一下上面讲的三个条件: -------------------------------------------------------------- 关键在于三点: 1.确定网卡AMD PCNET和vmnet1的网络号相同。 2.在虚拟系统里设置网络属性,把网关地址设为vmnet1的地 址。 3.开启主系统的路由功能,使它成为一台路由器。 -------------------------------------------------------------- 前两点我们已经在第一部分中做好了,现在只要开启了linux的路由功能虚拟系统就可以和外界通讯了。 linux是一个天生的网络操作系统,他在网络方面的强大功能使得它在网络服务器领域有广泛的应用。用linux来做路由器甚至不需要额外的软件,linux的内核直接支持静态路由的功能。我们要做的只是把路由功能打开就可以了。 可以先看看路由表: #route 确定所有网卡的IP地址或网络地址都在Destination一栏里 ,如下图: ------------------------------------------------------------------------------- Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.0.0 * 255.255.255.0 U 0 0 0 eth1 192.168.0.0 * 255.255.255.0 U 0 0 0 eth1 192.168.0.0 * 255.255.255.0 U 0 0 0 vmnet8 192.168.221.0 * 255.255.255.0 U 0 0 0 vmnet1 127.0.0.0 * 255.0.0.0 U 0 0 0 lo default www.gucuiwen.co 0.0.0.0 UG 0 0 0 eth0 ------------------------------------------------------------------------------- 默认情况下启动网络设备的时候系统会把该设备的IP地址添加到路由表中,如果没有的话可以重新启动一下网络服务: #service network resta rt 再来开启路由功能: # echo 1 > /proc/sys/net/ipv4/ip_forward 至此,linux的路由功能已经打开,你的linux系统已经成了一台路由器,连接着虚拟的网络和真实网络。虚拟网络和真实网络间就可以通信了。出于安全考虑,如果有必要的话还需要用iptables命令来设置一下路由规则 。 五、Windows下的虚拟机网络设置。 在Windows 下的虚拟机的网络设置大致和linux下的相同,只不过需要安装额外的路由软件,在Windows平台上有很多这样的软件可以用,比如 SysGate WinGate等,如果用的 是Windows 2000 Server 或者是Windows NT Server 的话可以用系统自带的"路由和远程访问"软件。具体的设置就不祥述了,相信只要懂了其中的原理就不难找到合适的解决方案了。如果你的电脑硬件足够的好,有 1G以上的内存和2G以上的CPU的话,那你也可以同时运行几台虚拟机,把这几台虚拟机组成一个网络,这样在一台电脑上就可以有一个功能强大的网络实验平台了。 ---------------------------------------------------- 收集一点一滴的进步
/
本文档为【虚拟机3中网络连接方式】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索