马哥教育网络班19期+第8周课程练习

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

    网桥用来连接两个不同的网络间的设备;集线器的作用是把接受的信号放大,从另一个端口再穿法出去,说白了就是延长网络的传输距离;

  二层交换机工作在数据链路层,根据源和目的MAC地址进行数据转发;三层交换机就是具有部分路由器功能的交换机,三层交换机的最重要目

  的是加快大型局域网内部的数据交换,能够做到一次路由,多次转发;路由器主要负责通过路由表对报文进行路由转发,三层交换机虽然也有转

  发功能,但是常用于局域网中。

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

  A类:1.0.0.1 到 126.255.255.254(10.X.X.X是私有地址,127.0.0.1是本地回环测试)

  B类:128.0.0.1到191.255.255.254(172.16.0.0到172.31.255.255是私有地址;当你是自动获取IP,但是没有DHCP服务器,就会使用169.254.0.0网段地址)

  C类:192.0.0.0到 223.255.255.254(192.168.0.0是私有地址)

  D类:224.0.0.1到239.255.255.254

  E类:240.0.0.1到255.255.255.254

  掩码:192.168.1.2/24或者192.168.1.2 255.255.255.0

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

  ①、 OSI模型:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层

           物理层利用物理传输介质为数据链路层提供物理连接,如:集线器、光纤、同轴电缆等;数据链路层将数据分帧,并处理流控制,屏蔽

           物理层,为网络层提供一个数据链路的连接,进行几乎无差错的数据传输如:网卡、网桥;网络层负责路由转发和控制网络拥塞,如:

           路由器等;传输层负责可靠(TCP)或不可靠(UDP)的数据传递;会话层负责两个节点之间的连接和断开;表示层负责加密和解密;

           应用层用于进程间通信,常用的协议有HTTP、FTP、SMTP、TELNET等       

  ②、 TCP/IP模型:网络接入层 、网际互联层、传输层、应用层

             网络接入层与OSI参考模型中的物理层和数据链路层相对应,负责监视数据在主机和网络之间的交换;网际互联层相当于OSI的网络层,

             主要处理主机到主机间的通信;传输层对应于OSI参考模型的传输层,为应用层实体提供端到端的通信功能,保证了数据包的顺序传送

             及数据的完整性,该层定义了两个主要的协议:传输控制协议(TCP)和用户数据报协议(UDP);应用层对应于OSI参考模型的会话层、

             表示层和应用层,为用户提供所需要的各种服务,如:FTP、Telnet、DNS、SMTP等。

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

  编辑/etc/sysconfig/network-scripts/ifcfg-eth0

  修改:ONBOOT=yes             //开机自启动        
      BOOTPROTO=static         //静态配置

      IPADDR=192.168.0.120      //IP地址
      NETMASK=255.255.255.0    //掩码
      GATEWAY=192.168.0.1       //网关
      DNS1=8.8.8.8           //DNS
      DNS2=114.114.114.114      //DNS

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

  • 如上题编辑ifcfg-eth0网卡;

  • dhclient自动获取IP地址(DHCP模式)

  • ip addr  add 172.16.1.110/16 dev eth0

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

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

  #!/bin/bash

  net='172.16.250'

  for i in { 1 254 };do
  ping -c 1 -w 1 $net.$i &> /dev/null
  if [ $? -eq 0 ] ; then
     echo -e " \033[;32m ${net}.$i \033[0m"
  else
     echo -e " \033[;31m $net.$i \033[0m"
  fi
  done

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

    DEVICE=eth0                               //网卡号
    HWADDR=00:0C:29:8C:C9:19                      //网卡的MAC
    TYPE=Ethernet                             //接口类型
    UUID=514d07b4-3b4d-4e48-a1fa-65652297b2d1        //网卡的UUID标识
    ONBOOT=yes                               //是否开机自启动yes为是,no为否
    NM_CONTROLLED=yes        
    BOOTPROTO=static                           //IP的获取方式,static为手动配置
    IPADDR=192.168.0.120                        //IP地址
    NETMASK=255.255.255.0                       //掩码
    GATEWAY=192.168.0.1                        // 网关
    DNS1=8.8.8.8                             //主DNS
    DNS2=114.114.114.114                       //备用DNS

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

  ifconfig eth0:0 192.168.0.22/24 up

    ip addr add 192.168.100.124/24 dev eth0:0

      复制为/etc/sysconfig/network-scripts/ifcfg-eth0:0,然后更改配置文件内的网卡名为eth0:0,然后更换新的IP地址,重启动网卡

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

  ifconfig设置网卡,ifconfig eth0 192.168.0.2/24       route add -host 192.168.1.3 gw 172.16.0.1 dev eth0

  route设置路由,rout add –host 192.168.0.2 gw 172.16.1.1 dev eth0

  ip设置地址,ip addr add 192.168.0.2/24 dev eth0

  显示网卡信息,netstat -i | grep "^eth0"

10、Linux系统软件包管理方法(安装、升级、卸载等操作)有哪些,以及如何管理的。

  • 安装

    rpm  –[ivh]  [–excludedocs | prefix | test | replace[pkgs |files] | nodeps packge

    i为安装,v为显示详细信息,h为hash是进度信息

    –excludedocs 不安装软件包的文档文件

    –prefix PATH 将软件包安装到指定目录

    –test 只对安装进行测试,并不实际安装(通常用来看下需要的依赖项)

    –replace[pkgs|files] 当出现冲突时或想强制覆盖时可以使用

    –nodeps 不考虑依赖关系,强制安装。(不推荐)

  • 查寻

    rpm  –q[a |f |p |i |l |d |c]  package

    -a  查询所有已安装的软件包

    -f  查询 文件所属软件包

    -p  查询软件包(通常用来看下还未安装的软件包)

    -i  显示软件包信息

    -l  显示软件包中的文件列表

    -d  显示被标注为文档的文件列表

    -c  显示被标注为配置文件的文件列表

    [tips]  通常可以配合管道 | more [grep sudo] 来使用

  • 卸载

    rpm -e卸载包,当包邮依赖关系的时候,使用rpm -e –nodeps忽略依赖关系

11、如何使用发行版光盘作为yum repository,请描述该过程。    

  挂载光盘,然后编辑/etc/yum.repos.d/CentOS-Media.repo文件,编辑baseurl=file://挂载路径即可。

12、写一个脚本,完成以下功能
   (1) 假设某目录(/etc/rc.d/rc3.d/)下分别有K开头的文件和S开头的文件若干;
   (2) 显示所有以K开头的文件的文件名,并且给其附加一个stop字符串;
   (3) 显示所有以S开头的文件的文件名,并且给其附加一个start字符串;
   (4) 分别统计S开头和K开头的文件各有多少;

      #!/bin/bash

      ls /etc/rc.d/rc3.d/ | awk '/^K/{print "stop "$1}'

      ls /etc/rc.d/rc3.d/ | awk '/^S/{print "start "$1}'

      ls /etc/rc.d/rc3.d/ | awk '{if (/^K/){n++}else{m++}}END{print "K : "n;print "S : "m}'

13、写一个脚本,完成以下功能
   (1) 脚本能接受用户名作为参数;
   (2) 计算此些用户的ID之和;

      [root@Hao ~]# awk -F ':' '{(Sum=Sum+$3)}; END {print Sum}' /etc/passwd

    七7.png

14、写一个脚本
  (1) 传递一些目录给此脚本;
  (2) 逐个显示每个目录的所有一级文件或子目录的内容类型;
  (3) 统计一共有多少个目录;且一共显示了多少个文件的内容类型   

  暂时不会  

15、写一个脚本
  通过命令行传递一个参数给脚本,参数为用户名
  如果用户的id号大于等于500,则显示此用户为普通用户;

  2.png16、写一个脚本
   (1) 添加10用户user1-user10;密码同用户名;
   (2) 用户不存在时才添加;存在时则跳过;
   (3) 最后显示本次共添加了多少用户;

   1.png17、写一脚本,用ping命令测试172.16.250.20-172.16.250.100以内有哪些主机在线,将在线的显示出来;

  #!/bin/bash

   hosts=192.168.0

   for i in { 100..160 } ; do

       if  ping -c 3 -w 1 $hosts.$i &> /dev/null; then

         echo "$hosts.$i is up"

       fi

   done

18、打印九九乘法表;

    #!/bin/sh
    for((i=1;i<10;i++))
    do
     for((j=1;j<=i;j++))
      do
      echo -n "$j*$i=$(($i*$j))   "
        if [ $j -eq $i ]
          then
          echo -e '\n'
        fi
      done
    done

    123.png

    1231.png

原创文章,作者:Net19_口香糖,如若转载,请注明出处:http://www.178linux.com/22202

(0)
Net19_口香糖Net19_口香糖
上一篇 2016-07-07
下一篇 2016-07-07

相关推荐

  • LVM详解

    目录:  一、概述  二、LVM的相关概念  三、概念图  四、LVM基本操作    1.创建PV    2.查看PV信息    3.创建VG    4.查看VG信息    5.创建LV    6.查…

    Linux干货 2015-09-22
  • 踩踩Linux命令中的那些坑

    有时候面对命令的执行和条件的判断,可能会遇到莫名奇妙的原因,可能是人为错误导致,也可能是命令本身的问题。

    Linux干货 2017-11-23
  • vim

    VIM是什么? Vim是从VI发展出来的一个文本编辑器,拥有许多丰富的功能,便于编程开发,在程序员中被广泛使用,是类Unix系统用户最喜欢的功能强大的跨平台文本文件编辑工具。 为什么要用VIM? vi编辑器是所有类UNIX系统下标准的编辑器,他是我们使用Linux系统不能缺少的工具。对于所有类UNIX系统的任何版本,vi编辑器是完全相同的。而vim是从VI发…

    2017-06-07
  • mysql进阶之MySQL查询

    一、MySQL多表查询和子查询 别名:as        表别名        字段别名        查询结果亦可命名别名   联结查询:事先将两张或多张表join,根…

    2016-11-18
  • 构建企业日志实时查看系统

    前言:          由于项目刚刚上线,出现了许多bug,开发人员需要经常跑过来查看日记,严重影响了我们运维人员的工作效率,时而久之,感觉那个烦啊。。各位仁兄有 没有体 会到呢!!! 之前找了一些处理日记的工具都不具有实时性,所以都未采纳,刚刚发现了log.io这个工具推荐个…

    Linux干货 2015-02-13
  • 马哥网络21-第5周作业

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; [root@localhost proc]# grep "^[[:space:]]\{1,\}" /boot/grub/grub.conf root (hd0,0) kernel /vmlinuz-2…

    Linux干货 2016-08-08

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-07 11:08

    写的很好,排版还可以在漂亮一点,加油