一、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。

  • 网桥(Bridge)

    网桥是第2层的设备,它设计用来创建两个或多个LAN分段。其中,每一个分段都是一个独立的冲突域。网桥设计用来产生更大可用宽带。它的目的是过滤LAN的通信流,使得本地的通信流保留在本地,而让那些定向到LAN其他部分(分段)的通信流转发到那里去。每一台网络设备在NIC(网络接口卡)中都有一个惟一的MAC(介质访问控制)地址。网桥会记录它每一边的MAC地址,然后基于这张MAC地址表作出转发决策。网桥已被具有更多端口、同时也可隔离冲突域的交换机(Switch)所取代。

  • 集线器

    集线器的主要功能是对接收到的信号进行再生×××放大,以扩大网络的传输距离,同时把所有节点集中在以它为中心的节点上。它工作于OSI(开放系统互联参考模型)参考模型第一层,即“物理层”。集线器的基本功能是信息分发,它把一个端口接收的所有信号向所有端口分发出去。一些集线器在分发之前将弱信号重新生成,一些集线器整理信号的时序以提供所有端口间的同步数据通信。

  • 二层交换机

    二层交换机是对应于OSI/RM的第二协议层来定义的,因为它只能工作在OSI/RM开放体系模型的第二层--数据链路层。第二层交换机依赖于链路层中的信息(如MAC地址)完成不同端口数据间的线速交换,主要功能包括物理编址、错误校验、帧序列以及数据流控制。这是最原始的交换技术产品,目前桌面型交换机一般是属于这类型,因为桌面型的交换机一般来说所承担的工作复杂性不是很强,又处于网络的最基层,所以也就只需要提供最基本的数据链接功能即可。目前二层交换机应用最为普遍(主要是价格便宜,功能符合中、小企业实际应用需求),一般应用于小型企业或中型以上企业网络的桌面层次。

  • 三层交换机

    三层交换机就是具有部分路由器功能的交换机,三层交换机的最重要目的是加快大型局域网内部的数据交换,所具有的路由功能也是为这目的服务的,能够做到一次路由,多次转发。对于数据包转发等规律性的过程由硬件高速实现,而像路由信息更新、路由表维护、路由计算、路由确定等功能,由软件实现。三层交换技术就是二层交换技术+三层转发技术。传统交换技术是在OSI网络标准模型第二层——数据链路层进行操作的,而三层交换技术是在网络模型中的第三层实现了数据包的高速转发,既可实现网络路由功能,又可根据不同网络状况做到最优网络性能。在实际应用过程中,典型的做法是:处于同一个局域网中的各个子网的互联以及局域网中VLAN间的路由,用三层交换机来代替路由器,而只有局域网与公网互联之间要实现跨地域的网络访问时,才通过专业路由器。

  • 路由器

    路由器(Router)又称网关设备(Gateway)是用于连接多个逻辑上分开的网络,所谓逻辑网络是代表一个单独的网络或者一个子网。当数据从一个子网传输到另一个子网时,可通过路由器的路由功能来完成。因此,路由器具有判断网络地址和选择IP路径的功能,它能在多网络互联环境中,建立灵活的连接,可用完全不同的数据分组和介质访问方法连接各种子网,路由器只接受源站或其他路由器的信息,属网络层的一种互联设备。


二、IP地址的分类有哪些?子网掩码的表示形式及其作用

类别
IP地址范围 缺省子网掩码
A
0.0.0.0-127.255.255.255
255.0.0.0
B
128.0.0.0-191.255.255.255 255.255.0.0
C
192.0.0.0-223.255.255.255 255.255.255.0
D(多播地址)
224.0.0.0-239.255.255.255

E(保留地址)
240.0.0.0~255.255.255.254



  • 子网掩码通常有以下2种格式的表示方法:

    1. 通过与IP地址格式相同的点分十进制表示

    如:255.0.0.0 或255.255.255.128

    2. 在IP地址后加上"/"符号以及1-32的数字,其中1-32的数字表示子网掩码中网络标识位的长度

    如:192.168.1.1/24 的子网掩码也可以表示为255.255.255.0

    子网掩码一般为255.255.255.0

  • 子网掩码作用

    子网掩码是一个32位地址,是与IP地址结合使用的一种技术。它的主要作用有两个,一是用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在远程网上。二是用于将一个大的IP网络划分为若干小的子网络。



三、计算机网络的分成模型有哪些(OSI模型和TCP/IP模型),每一层的功能及涉及到的物理设备有哪些。

  • OSI模型

    功能
    物理设备
    物理层
    利用传输介质为数据链路层提供物理连接,实现比特流的透明传输 网卡、网线、集线器、中继器、调制解调器
    数据链路层
    通过各种控制协议,将有差错的物理信道变为无差错的、能可靠传输数据帧的数据链路
    网桥、2层交换机
    网络层
    通过路由选择算法,为报文或分组通过通信子网选择最适当的路径
    路由器、3层交换机
    传输层
    向用户提供可靠的端到端的差错和流量控制,保证报文的正确传输

    会话层
    向两个实体的表示层提供建立和使用连接的方法
    表示层 它对来自应用层的命令和数据进行解释,对各种语法赋予相应的含义,并按照一定的格式传送给会话层

    应用层
    它是计算机用户,以及各种应用程序和网络之间的接口,其功能是直接向用户提供服务,完成用户希望在网络上完成的各种工作


四、如何将Linux主机接入到TCP/IP网络,请描述详细的步骤。(手动指定的方式)

[08:52:50 root@qa36 ~]#vim /etc/sysconfig/network-scripts/ifcfg-eth0            #修改网eth0卡配置文件
DEVICE=eth0            #网卡接口名称
TYPE=Ethernet            #网卡类型
ONBOOT=yes            #系统启动时是否自动加载
NM_CONTROLLED=no            #是否开启network manger托管            
BOOTPROTO=static            #启用地址协议 --static:静态协议 --bootp协议 --dhcp协议
IPADDR=10.18.11.36            #网卡IP地址
NETMASK=255.255.255.0            #网卡网络地址
GATEWAY=10.18.11.1            #网卡网关地址

[09:04:03 root@qa36 ~]#vim /etc/resolv.conf            #修改DNS配置文件
nameserver 10.18.15.250            #表明DNS服务器的IP地址

[09:06:32 root@qa36 ~]#service network restart            #重启网络


五、为Linux主机配置网络信息的方式有哪些,请描述各个过程。

  • 临时修改方案,重启后失效

    Ifconfig eth0 192.168.1.100 netmask 255.255.255.0 up            #设置ip地址

    route add –net 0.0.0.0 netmask 0.0.0.0 gw 192.168.1.1            #添加默认路由

  • 永久修改方案

    vi /etc/sysconfig/network-scripts/ifcfg-eth0            #修改接口配置文件,可以配置IP、掩码、网关、DNS等信息

    service network restart             #重启网络服务后生效


六、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态;

    在线的主机使用绿色显示;

    不在线的主使用红色显示;

[root@localhost shell]# cat ping2.sh          #改个网段方便测试
#!/bin/bash/
ip=10.18.11.
for i in `seq 1 254`;do
        if `ping -w 1 -c 1 ${ip}${i} >/dev/null 2>&1` ;then
                echo -e "\e[32m $ip$i is up \e[0m"
        else
                echo -e "\e[31m $ip$i is down \e[0m"
        fi
done

第五周作业【Linux微职位】_第1张图片

七、详细描述每个网络接口的配置文件中各个参数的含义和其所对应的值;

TYPE=Ethernet        #配置文件接口类型
DEVICE=eth0        #网卡接口名称  
BOOTPROTO=static        #BOOTPROTO:系统启动地址协议 --none:不使用启动地址协议 --bootp:BOOTP协议 --dhcp:DHCP动态地址协议 --static:静态地址协议
ONBOOT=yes            #系统启动时是否激活  --yes:系统启动时激活该网络接口  --no:系统启动时不激活该网络接口
IPADDR=10.0.1.27        #IP地址
NETMASK=255.255.255.0        #子网掩码
GATEWAY=10.0.1.1        #网关  
HWADDR=00:0C:29:13:5D:74        #MAC地址
DNS1=10.0.1.41       #DNS地址,可以设置3个
NM_CONTROLLED=no        #是否由Network Manager控制该网络接口  --由Network Manager控制  --不由Network Manager控制


八、如何给网络接口配置多个地址,有哪些方式?

  • 修改配置文件

    cp ifcfg-eth0 ifcfg-eth0:1”复制eth0的配置文件,文件名在原文件名后加":1",修改ifcfg-eth0:1中相应的字段

  • 设置网卡的ip别名

    ifconfig eth0:1 192.168.0.2 netmask 255.255.255.0 up

    ip addr add 192.168.0.3/24 dev eth0 label eth0:2

九、常用的网络管理类工具有哪些,并用示例形式描述他们的使用方法。

  • ping

[root@localhost ~]# ping -c 3 -i 0.5 10.18.11.1        #指定时间间隔和次数限制
PING 10.18.11.1 (10.18.11.1) 56(84) bytes of data.
64 bytes from 10.18.11.1: icmp_seq=1 ttl=255 time=1.77 ms
64 bytes from 10.18.11.1: icmp_seq=2 ttl=255 time=0.892 ms
64 bytes from 10.18.11.1: icmp_seq=3 ttl=255 time=0.852 ms
  • traceroute命令

traceroute -n www.baidu.com        #显示IP地址,不查主机名
traceroute to www.baidu.com (115.239.211.112), 30 hops max, 60 byte packets
1  10.18.11.1  0.673 ms  1.329 ms  1.609 ms
2  10.18.13.252  0.563 ms  0.919 ms  1.216 ms
3  180.167.69.201  5.236 ms  5.517 ms  5.545 ms
4  124.74.107.121  5.622 ms  5.629 ms  5.748 ms
5  101.95.124.77  5.789 ms  5.783 ms  5.781 ms
6  124.74.254.193  6.996 ms  7.225 ms  7.966 ms
7  59.43.77.145  7.636 ms  7.504 ms 59.43.77.153  7.485 ms
8  59.43.80.10  10.558 ms  6.774 ms  6.564 ms
9  202.97.68.50  6.244 ms 202.97.68.142  9.073 ms  9.038 ms
10  220.191.200.102  7.501 ms 220.191.200.42  9.830 ms 220.191.200.102  9.749 ms
11  * * *
12  115.239.209.2  7.410 ms  7.309 ms 115.239.209.10  8.467 ms
13  * * *
14  * * *
30  * * *
  • ipconfig

[root@localhost~]#ifconfig        #处于激活状态的网络接口
eth0      Link encap:Ethernet  HWaddr 00:50:56:A8:0C:A5  
          inet addr:10.18.11.36  Bcast:10.18.11.255  Mask:255.255.255.0
          inet6 addr: fe80::250:56ff:fea8:ca5/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1201071 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1331553 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:816347237 (778.5 MiB)  TX bytes:192006907 (183.1 MiB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:9808682 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9808682 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:2376516619 (2.2 GiB)  TX bytes:2376516619 (2.2 GiB)
[root@localhost~]#ifconfig-a        #所有配置的网络接口,不论其是否激活
[root@localhost~]#ifconfig eth0        #显示eth0的网卡信息
[root@localhost~]#ifconfig eth0 down        #关闭eth0网卡
[root@localhost~]#ifconfig eth0 up        #开启eth0网卡
[root@localhost~]#ifconfig eth0 10.18.11.100/24        #设置IP地址及掩码
  • route

[root@localhost ~]# route        #显示当前路由
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         10.18.11.1      0.0.0.0         UG    100    0        0 ens192
10.18.11.0      0.0.0.0         255.255.255.0   U     100    0        0 ens192
[root@localhost ~]# route add default gw 192.168.0.1  #添加默认网关
[root@localhost ~]# route del default gw 192.168.0.1  #删除默认网关
[root@localhost ~]# route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0   #增加一条路由
  • netstat

[root@localhost ~]# netstat -a        #列出所有当前的连接
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 0.0.0.0:ssh             0.0.0.0:*               LISTEN     
tcp        0      0 localhost:smtp          0.0.0.0:*               LISTEN     
tcp        0     52 10.18.11.29:ssh         172.18.2.221:61950      ESTABLISHED
tcp6       0      0 [::]:ssh                [::]:*                  LISTEN     
tcp6       0      0 localhost:smtp          [::]:*                  LISTEN     
raw6       0      0 [::]:ipv6-icmp          [::]:*                  7          
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node   Path
unix  2      [ ACC ]     STREAM     LISTENING     13078    /var/run/NetworkManager/private
unix  2      [ ACC ]     STREAM     LISTENING     15657    public/pickup
unix  2      [ ACC ]     STREAM     LISTENING     15661    public/cleanup
...

[root@localhost ~]# netstat -at        #列出 TCP 协议的连接
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 0.0.0.0:ssh             0.0.0.0:*               LISTEN     
tcp        0      0 localhost:smtp          0.0.0.0:*               LISTEN     
tcp        0     52 10.18.11.29:ssh         172.18.2.221:61950      ESTABLISHED
tcp6       0      0 [::]:ssh                [::]:*                  LISTEN     
tcp6       0      0 localhost:smtp          [::]:*                  LISTEN    

[root@localhost ~]# netstat -au        #列出 UDP 协议的连接
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State      
udp        0      0 *:sunrpc                    *:*                                     
udp        0      0 *:ipp                       *:*                                     
udp        0      0 qa36:ntp                    *:*                                     
udp        0      0 qa:ntp                      *:*

[root@localhost ~]#  netstat -tnl        #列出监听中tcp的连接
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN     
tcp6       0      0 :::22                   :::*                    LISTEN     
tcp6       0      0 ::1:25                  :::*                    LISTEN     

[root@localhost ~]# netstat -n        #显示所有已建立的有效连接
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0     52 10.18.11.29:22          172.18.2.221:61950      ESTABLISHED
  • ss

ss参数用法同netstat
ss -o state established '( dport = :smtp or sport = :smtp )'        #显示所有已建立的SMTP连接
ss -o state established '( dport = :http or sport = :http )'        #显示所有已建立的HTTP连接