第六章 网络基础知识讲义.pdf

一、 计算机网络概念与分类

  1. 计算机网络的定义
    1. image.png
    2. 计算机网络是在网络协议的控制下,通过通信设备和线路将分布在不同地理位置,且具有独立功能的多个计算机系统连接起来,通过网络操作系统等网络软件实现通信和资源共享的系统。
      1. 计算机网络中至少拥有两台以上的计算机
      2. 传输媒体和通信设备把若干台计算机连接到了一起。
      3. 为需要网络软件,含操作系统
      4. 为了正确地通信,需要有一个共同遵守的约定——通信协议。
      5. 把多台计算机连接在一起,形成一个网络,是为了通信和资源共享。
  2. 计算机网络的发展史
    1. 第一代计算机网络:面向终端的远程联机系统
      1. 1946 年产生第一台数字计算机
      2. 1954 年收发器终端的产生
      3. 20世纪 60 年代初,产生由多重线路控制器参与组成的网络。
      4. 这种网络中,终端设备没有独立处理能力,可以传输资料,不能共享资源。
    2. 第二代计算机网络:计算机-计算机网络
      1. 1964 年,Baran 提出存储转发概念
      2. 1966 年,David 提出分组概念
      3. 1969 年,计算机分组交换网 ARPANET(ARPA:Advanced Research Projects Agency 美国国防部高级研究计划署)投入运行。
        1. 网络属于同构网。
        2. 网络仍主要用于传输信息,对网络缺乏统一管理
    3. 第三代计算机网络:开放式标准化网络
      1. 1977 年 ISO(International Standard Organization,国际标准化组织)提出OSI 模型(Open System Interconnection,开放系统互联模型)
      2. 此种网络实现了不同类型的计算机系统互联,遵循国际标准化协议的开放式标准化网络,具有统一的体系结构,以资源共享为主要目的。
    4. 第四代计算机网络:新一代网络
      1. 网络正迅速地朝着高速化、实时化、智能化、集成化和多媒体化的方向不断深入。
      2. 逐步将电信网、有线电视、和计算机网络融合,三网合一。
  3. 计算机网络的分类

    1. 根据覆盖地理范围划分
      1. 局域网 LAN:方圆几千米以内。
      2. 城域网 MAN
      3. 广域网 WAN:几十千米到几百千米。
      4. Internet 因特网

        二、 计算机网络体系结构

  4. 网络结构的分层设计

    1. 为了降低网络设计的复杂性,将网络进行了分层设计。每一层只关心自己层的设计
  5. 协议
    1. 为了使数据可以在网络上从源传递到目的地,网络上所有设备需要讲相同的语言,描述网络通信中语言规范的一组规则就是协议
      1. 协议是指网络中的计算机在通信时对传送信息的理解、信息表示的形式及各种应答信号所应遵循的共同约定。
  6. 网络体系结构/网络模型
    1. 分类
      1. ISO/OSI模型
        1. 国际标准化组织/开发系统互联模型
      2. TCP/IP模型
        1. TCP/IP(Transmission Control Protocol/Internet Protocol),传输控制协议/互联网协议
        2. 因特网中实际采用的标准,TCP/IP是ARPANET为了实现异种网的互联,在对网间网的研究和应用中产生的
        3. 是由很多协议构成的一个协议族
    2. ISO/OSI模型
      1. ISO/OSI模型分为 7
        1. 应用、表示、会话、传输、网络、数据链路、物理层
        2. image.png
      2. 数据封装
        1. image.png
        2. image.png
        3. image.png
        4. image.png
        5. image.png
        6. image.png
      3. 各层工作的物理设备
        1. 物理层
          1. 网卡
          2. 集线器
        2. 数据链路层
          1. 交换机
        3. 网络层
          1. 路由器
        4. 传输层
          1. 防火墙
        5. 应用层
          1. 服务器
    3. TCP/IP模型
      1. 实际应用中,完全遵从OSI参考模型的协议几乎没有
        1. TCP/IP,20世纪70年代,美国国防高级研究计划署开发
        2. 最早在ARPANET上实现,目的在于解决异构系统的通信问题
      2. TCP/IP分为四层
        1. 应用、传输、互联网、网络接口层
        2. image.png
      3. TCP/IP各层协议
        1. image.png
      4. IP协议
        1. IP (Internet Protocol)译为网际协议/网络协议/互联网协议。
          1. 对数据包寻址和路由,并从一个网络转发到另一个网络。
            1. IP 协议在每个发送的数据包前加入一个控制信息,其中包含了源主机的IP地址、目的主机的 IP 地址和其他一些信息。
          2. 分割和重组在传输层被分割的数据包。
            1. 由于数据包要从一个网络到另一个网络,当两个网络所支持传输的数据包的大小不相同时,IP 协议就要在发送端将数据包分割,然后在分割的每一段前再加入控制信息进行传输。当接收端接收到数据包后,IP 协议将所有的片段重新组合形成原始的数据。
          3. 无连接传递数据。
            1. 无连接是指主机之间不建立用于可靠通信的端到端的连接,源主机只是简单地将 IP 数据包发送出去,而数据包可能会丢失、重复、延迟时间大或者IP 包的次序会混乱。
            2. 要实现数据包的可靠传输,就必须依靠高层的协议或应用程序,如传输层的TCP 协议。
      5. ICMP协议
        1. ICMP(Internet Control Message Protocol)译为互联网控制报文协议,主要用于侦测远端主机是否存在、建立及维护路由资料、重导资料传送路径、资料流量控制。
          1. ping命令:探测能否连通指定计算机
            1. 连接建立成功
              1. Reply from 192.168.1.1:bytes=32 time<1ms TTL=128
                1. TTL 是 Time To Live 的缩写,该字段指定 IP 包被路由器丢弃之前允许通过的最大网段数量。TTL 是 IPv4 包头的一个8bit 字段
            2. 目标主机不可达:Destination host unreachable.
            3. 请求时间超时:Request timed out.
            4. 未知主机名:Unknown host abc
          2. tracert:跟踪路由器
      6. ARP协议
        1. ARP(Address Resolution Protocol)译为地址解析协议,用于将IP 地址转换为MAC地址。
          1. MAC(Media Access Control)地址,或称硬件位址/机器地址/物理地址
            1. 用来定义网络设备的位置,代表网络中的唯一一台计算机。
            2. MAC 地址由 48 比特长,0 到 23 位是厂商向 IETF 等机构申请用来标识厂商的代码。地址的 24 到 47 位由厂商自行分派,是各个厂商制造的所有网卡的一个唯一编号。常用 12 位的 16 进制数字组成。
            3. ipconfig /all 或 getmac /v 可以查看 MAC 地址。
      7. UDP 与 TCP 协议
        1. 二者都属于传输层协议。
          1. UDP 协议(User Datagram Protocol,用户数据报协议)
            1. 属于传输层协议。
            2. 无连接。
            3. 不可靠。
            4. 可靠性由上层协议保证。
          2. TCP 协议
            1. 面向连接,支持端到端通信。
            2. 进行无差错控制,传输是可靠的。
            3. 进行必要流量控制,避免发包过快而导致阻塞。
          3. TCP 的连接:三次握手
            1. image.png
      8. 应用层协议
        1. FTP(File Transfer Protocol)
          1. 文件传输协议
          2. 用于上传文件和下载文件
        2. HTTP(Hyper Text Transfer Protocol)
          1. 超文本传输协议
          2. 用于访问网站
        3. https(Hyper Text Transfer Protocol over Secure Socket Layer)
          1. 安全的超文本传输协议
        4. Telnet 远程协议
          1. 用于远程连接计算机
        5. SMTP(Simple Mail Transmission Protocol)
          1. 简单邮件传输协议
          2. 用于发送邮件
        6. POP3(Post Office Protocol version 3)
          1. 邮局协议版本 3
          2. 用于收邮件
        7. DNS(Domain Name System)
          1. 域名系统
          2. 用于将域名解析为 IP 地址、将 IP 地址解析为域名
        8. DHCP(Dynamic Host Configuration Protocol)
          1. 动态主机配置协议
          2. 用于自动分配 IP 地址
  7. 端口
    1. 端口号用来标识同一时间内通过网络的不同连接
      1. 端口号范围:0-65535
        1. 应用层知名服务:0-255
        2. 各个厂商:256-1023
        3. 未被分配:>1023
      2. 查端口号
        1. C:\Windows\System32\drivers\etc\services
          ```go

          Copyright (c) 1993-2004 Microsoft Corp.

          #

          This file contains port numbers for well-known services defined by IANA

          #

          Format:

          #

          / [aliases…] [#]

          #

echo 7/tcp echo 7/udp systat 11/tcp users #Active users systat 11/udp users #Active users daytime 13/tcp daytime 13/udp qotd 17/tcp quote #Quote of the day qotd 17/udp quote #Quote of the day chargen 19/tcp ttytst source #Character generator chargen 19/udp ttytst source #Character generator ftp-data 20/tcp #FTP, data ftp 21/tcp #FTP. control ssh 22/tcp #SSH Remote Login Protocol telnet 23/tcp smtp 25/tcp mail #Simple Mail Transfer Protocol time 37/tcp timserver time 37/udp timserver rlp 39/udp resource #Resource Location Protocol nameserver 42/tcp name #Host Name Server nameserver 42/udp name #Host Name Server nicname 43/tcp whois domain 53/tcp #Domain Name Server domain 53/udp #Domain Name Server bootps 67/udp dhcps #Bootstrap Protocol Server bootpc 68/udp dhcpc #Bootstrap Protocol Client tftp 69/udp #Trivial File Transfer gopher 70/tcp finger 79/tcp http 80/tcp www www-http #World Wide Web hosts2-ns 81/tcp #HOSTS2 Name Server hosts2-ns 81/udp #HOSTS2 Name Server kerberos 88/tcp krb5 kerberos-sec #Kerberos kerberos 88/udp krb5 kerberos-sec #Kerberos hostname 101/tcp hostnames #NIC Host Name Server iso-tsap 102/tcp #ISO-TSAP Class 0 rtelnet 107/tcp #Remote Telnet Service pop2 109/tcp postoffice #Post Office Protocol - Version 2 pop3 110/tcp #Post Office Protocol - Version 3 sunrpc 111/tcp rpcbind portmap #SUN Remote Procedure Call sunrpc 111/udp rpcbind portmap #SUN Remote Procedure Call auth 113/tcp ident tap #Identification Protocol uucp-path 117/tcp sqlserv 118/tcp #SQL Services nntp 119/tcp usenet #Network News Transfer Protocol ntp 123/udp #Network Time Protocol epmap 135/tcp loc-srv #DCE endpoint resolution epmap 135/udp loc-srv #DCE endpoint resolution netbios-ns 137/tcp nbname #NETBIOS Name Service netbios-ns 137/udp nbname #NETBIOS Name Service netbios-dgm 138/udp nbdatagram #NETBIOS Datagram Service netbios-ssn 139/tcp nbsession #NETBIOS Session Service imap 143/tcp imap4 #Internet Message Access Protocol sql-net 150/tcp sqlsrv 156/tcp pcmail-srv 158/tcp #PCMail Server snmp 161/udp #SNMP snmptrap 162/udp snmp-trap #SNMP trap print-srv 170/tcp #Network PostScript bgp 179/tcp #Border Gateway Protocol irc 194/tcp #Internet Relay Chat Protocol
ipx 213/udp #IPX over IP rtsps 322/tcp rtsps 322/udp mftp 349/tcp mftp 349/udp ldap 389/tcp #Lightweight Directory Access Protocol https 443/tcp MCom #HTTP over TLS/SSL https 443/udp MCom #HTTP over TLS/SSL microsoft-ds 445/tcp microsoft-ds 445/udp kpasswd 464/tcp # Kerberos (v5) kpasswd 464/udp # Kerberos (v5) isakmp 500/udp ike #Internet Key Exchange crs 507/tcp #Content Replication System crs 507/udp #Content Replication System exec 512/tcp #Remote Process Execution biff 512/udp comsat login 513/tcp #Remote Login who 513/udp whod cmd 514/tcp shell syslog 514/udp printer 515/tcp spooler talk 517/udp ntalk 518/udp efs 520/tcp #Extended File Name Server router 520/udp route routed ulp 522/tcp
ulp 522/udp
timed 525/udp timeserver tempo 526/tcp newdate irc-serv 529/tcp irc-serv 529/udp courier 530/tcp rpc conference 531/tcp chat netnews 532/tcp readnews netwall 533/udp #For emergency broadcasts uucp 540/tcp uucpd klogin 543/tcp #Kerberos login kshell 544/tcp krcmd #Kerberos remote shell dhcpv6-client 546/tcp #DHCPv6 Client dhcpv6-client 546/udp #DHCPv6 Client dhcpv6-server 547/tcp #DHCPv6 Server dhcpv6-server 547/udp #DHCPv6 Server afpovertcp 548/tcp #AFP over TCP afpovertcp 548/udp #AFP over TCP new-rwho 550/udp new-who rtsp 554/tcp #Real Time Stream Control Protocol rtsp 554/udp #Real Time Stream Control Protocol remotefs 556/tcp rfs rfs_server rmonitor 560/udp rmonitord monitor 561/udp nntps 563/tcp snntp #NNTP over TLS/SSL nntps 563/udp snntp #NNTP over TLS/SSL whoami 565/tcp whoami 565/udp ms-shuttle 568/tcp #Microsoft shuttle ms-shuttle 568/udp #Microsoft shuttle ms-rome 569/tcp #Microsoft rome ms-rome 569/udp #Microsoft rome http-rpc-epmap 593/tcp #HTTP RPC Ep Map http-rpc-epmap 593/udp #HTTP RPC Ep Map hmmp-ind 612/tcp #HMMP Indication hmmp-ind 612/udp #HMMP Indication hmmp-op 613/tcp #HMMP Operation hmmp-op 613/udp #HMMP Operation ldaps 636/tcp sldap #LDAP over TLS/SSL doom 666/tcp #Doom Id Software doom 666/udp #Doom Id Software msexch-routing 691/tcp #MS Exchange Routing msexch-routing 691/udp #MS Exchange Routing kerberos-adm 749/tcp #Kerberos administration kerberos-adm 749/udp #Kerberos administration kerberos-iv 750/udp #Kerberos version IV mdbs_daemon 800/tcp mdbs_daemon 800/udp ftps-data 989/tcp #FTP data, over TLS/SSL ftps 990/tcp #FTP control, over TLS/SSL telnets 992/tcp #Telnet protocol over TLS/SSL imaps 993/tcp #IMAP4 protocol over TLS/SSL ircs 994/tcp #IRC protocol over TLS/SSL pop3s 995/tcp spop3 #pop3 protocol over TLS/SSL (was spop3) pop3s 995/udp spop3 #pop3 protocol over TLS/SSL (was spop3) kpop 1109/tcp #Kerberos POP nfsd-status 1110/tcp #Cluster status info nfsd-keepalive 1110/udp #Client status info nfa 1155/tcp #Network File Access nfa 1155/udp #Network File Access activesync 1034/tcp #ActiveSync Notifications phone 1167/udp #Conference calling opsmgr 1270/tcp #Microsoft Operations Manager opsmgr 1270/udp #Microsoft Operations Manager ms-sql-s 1433/tcp #Microsoft-SQL-Server ms-sql-s 1433/udp #Microsoft-SQL-Server ms-sql-m 1434/tcp #Microsoft-SQL-Monitor ms-sql-m 1434/udp #Microsoft-SQL-Monitor
ms-sna-server 1477/tcp ms-sna-server 1477/udp ms-sna-base 1478/tcp ms-sna-base 1478/udp wins 1512/tcp #Microsoft Windows Internet Name Service wins 1512/udp #Microsoft Windows Internet Name Service ingreslock 1524/tcp ingres stt 1607/tcp stt 1607/udp l2tp 1701/udp #Layer Two Tunneling Protocol pptconference 1711/tcp pptconference 1711/udp pptp 1723/tcp #Point-to-point tunnelling protocol msiccp 1731/tcp msiccp 1731/udp remote-winsock 1745/tcp remote-winsock 1745/udp ms-streaming 1755/tcp ms-streaming 1755/udp msmq 1801/tcp #Microsoft Message Queue msmq 1801/udp #Microsoft Message Queue radius 1812/udp #RADIUS authentication protocol radacct 1813/udp #RADIUS accounting protocol msnp 1863/tcp msnp 1863/udp ssdp 1900/tcp ssdp 1900/udp close-combat 1944/tcp close-combat 1944/udp nfsd 2049/udp nfs #NFS server knetd 2053/tcp #Kerberos de-multiplexor mzap 2106/tcp #Multicast-Scope Zone Announcement Protocol mzap 2106/udp #Multicast-Scope Zone Announcement Protocol qwave 2177/tcp #QWAVE qwave 2177/udp #QWAVE Experiment Port directplay 2234/tcp #DirectPlay directplay 2234/udp #DirectPlay ms-olap3 2382/tcp #Microsoft OLAP 3 ms-olap3 2382/udp #Microsoft OLAP 3 ms-olap4 2383/tcp #Microsoft OLAP 4 ms-olap4 2383/udp #Microsoft OLAP 4 ms-olap1 2393/tcp #Microsoft OLAP 1 ms-olap1 2393/udp #Microsoft OLAP 1 ms-olap2 2394/tcp #Microsoft OLAP 2 ms-olap2 2394/udp #Microsoft OLAP 2 ms-theater 2460/tcp ms-theater 2460/udp wlbs 2504/tcp #Microsoft Windows Load Balancing Server wlbs 2504/udp #Microsoft Windows Load Balancing Server ms-v-worlds 2525/tcp #Microsoft V-Worlds ms-v-worlds 2525/udp #Microsoft V-Worlds sms-rcinfo 2701/tcp #SMS RCINFO sms-rcinfo 2701/udp #SMS RCINFO sms-xfer 2702/tcp #SMS XFER sms-xfer 2702/udp #SMS XFER sms-chat 2703/tcp #SMS CHAT sms-chat 2703/udp #SMS CHAT sms-remctrl 2704/tcp #SMS REMCTRL sms-remctrl 2704/udp #SMS REMCTRL msolap-ptp2 2725/tcp #MSOLAP PTP2 msolap-ptp2 2725/udp #MSOLAP PTP2 icslap 2869/tcp icslap 2869/udp cifs 3020/tcp cifs 3020/udp xbox 3074/tcp #Microsoft Xbox game port xbox 3074/udp #Microsoft Xbox game port ms-dotnetster 3126/tcp #Microsoft .NET ster port ms-dotnetster 3126/udp #Microsoft .NET ster port ms-rule-engine 3132/tcp #Microsoft Business Rule Engine Update Service ms-rule-engine 3132/udp #Microsoft Business Rule Engine Update Service msft-gc 3268/tcp #Microsoft Global Catalog msft-gc 3268/udp #Microsoft Global Catalog msft-gc-ssl 3269/tcp #Microsoft Global Catalog with LDAP/SSL msft-gc-ssl 3269/udp #Microsoft Global Catalog with LDAP/SSL ms-cluster-net 3343/tcp #Microsoft Cluster Net ms-cluster-net 3343/udp #Microsoft Cluster Net ms-wbt-server 3389/tcp #MS WBT Server ms-wbt-server 3389/udp #MS WBT Server ms-la 3535/tcp #Microsoft Class Server ms-la 3535/udp #Microsoft Class Server pnrp-port 3540/tcp #PNRP User Port pnrp-port 3540/udp #PNRP User Port teredo 3544/tcp #Teredo Port teredo 3544/udp #Teredo Port p2pgroup 3587/tcp #Peer to Peer Grouping p2pgroup 3587/udp #Peer to Peer Grouping ws-discovery 3702/udp #WS-Discovery ws-discovery 3702/tcp #WS-Discovery dvcprov-port 3776/tcp #Device Provisioning Port dvcprov-port 3776/udp #Device Provisioning Port msfw-control 3847/tcp #Microsoft Firewall Control msdts1 3882/tcp #DTS Service Port sdp-portmapper 3935/tcp #SDP Port Mapper Protocol sdp-portmapper 3935/udp #SDP Port Mapper Protocol net-device 4350/tcp #Net Device net-device 4350/udp #Net Device ipsec-msft 4500/tcp #Microsoft IPsec NAT-T ipsec-msft 4500/udp #Microsoft IPsec NAT-T llmnr 5355/tcp #LLMNR llmnr 5355/udp #LLMNR wsd 5357/tcp #Web Services on devices wsd 5358/tcp #Web Services on devices rrac 5678/tcp #Remote Replication Agent Connection rrac 5678/udp #Remote Replication Agent Connection dccm 5679/tcp #Direct Cable Connect Manager dccm 5679/udp #Direct Cable Connect Manager ms-licensing 5720/tcp #Microsoft Licensing ms-licensing 5720/udp #Microsoft Licensing directplay8 6073/tcp #DirectPlay8 directplay8 6073/udp #DirectPlay8 ms-do 7680/tcp #Microsoft Delivery Optimization ms-do 7680/udp #Microsoft Delivery Optimization man 9535/tcp #Remote Man Server rasadv 9753/tcp rasadv 9753/udp imip-channels 11320/tcp #IMIP Channels Port imip-channels 11320/udp #IMIP Channels Port directplaysrvr 47624/tcp #Direct Play Server directplaysrvr 47624/udp #Direct Play Server ```

三、IP地址

  1. IP 地址的分类
    1. 分为 5 个不同的地址类别,其中 A、B、C 三类最为常用,D 类地址用作组播,E类地址保留未用。
    2. image.png
    3. 网络号不允许全 0,主机号不允许全 0、全 1(指二进制形式)
      1. 主机号全 0:表示子网或本网,常用于路由中。不能在公网上分配和出现
      2. 主机号全 1:表示广播地址,发送到地址全 1 的主机,表示信息发送给本网中的所有主机。不能在公网上分配和出现。
  2. 特殊的IP地址

    1. 也称为专用 IP 地址、保留地址,只限内网使用,也不会出现于公网。
      1. A 类
        1. 10...*
        2. 127...*表示回环地址(loopback)或环路测试 IP,localhost。
      2. B 类
        1. 172.16..~172.31.*.
        2. 169.254..表示自私有 IP 地址。
      3. C 类
        1. 192.168.0.~192.168.255.

          四、 子网掩码

  3. 子网掩码的特点

    1. 共 32 位二进制,由连续的“1”和连续的“0”组成,左边向右全是1,右边向左全是0。
    2. 标准长度的子网掩码
      1. A 类:255.0.0.0 或 /8
      2. B 类:255.255.0.0 或 /16
      3. C 类:255.255.255.0 或 /24
    3. 可变长的子网掩码
      1. 128(10000000) 例如:255.255.255.128 或 /25
      2. 192(11000000) 例如:255.255.192.0 或 /18
      3. 224(11100000) 例如:255.255.255.224 或 /27
      4. 240(11110000) 例如:255.240.0.0 或 /12
      5. 248(11111000) 例如:255.255.255.248 或 /29
      6. 252(11111100) 例如:255.255.255.252 或 /30
  4. 子网掩码的应用

    1. 用来表征 IP 地址所处的网络位置,进而用于判断下列两台主机间能否连通。
      1. 判断步骤
        1. 将 IP 地址和子网掩码转换成二进制
        2. 将 IP 地址和子网掩码按位进行与运算
        3. 得出子网号,判断是否相等
          1. 网号相同,则可以相互连通,否则不能连通
    2. 案例
      1. 192.168.5.23 与 192.168.5.175,子网掩码 255.255.255.0
      2. 192.168.5.23 与 192.168.5.175,子网掩码 255.255.255.128

        五、 设置和测试系统网络参数

  5. 设置 TCP/IP 参数

    1. 如何获得 IP 地址
      1. 手动设置 IP 地址
      2. 自动设置 IP 地址
        1. DHCP
        2. 169.254.x.y
  6. 检查 TCP/IP 设置是否正确
    1. IP 地址发生冲突
      1. 利用“网络错误”对话框
      2. 通过“本地连接”对话框的“详细信息”检查
      3. 利用 ipconfig 命令