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

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

集线器:工作于物理层,实现设备的接入,数据信号放大、中转,共享信道。

网桥:工作于数据链路层,实现多个lan之间数据的转发,隔离冲突域,类似二层交换机

二层交换机:工作于数据链路层,可连接多个lan,根据帧的mac来转发数据,隔离冲突域,端口较多。

三层交换机:工作于二、三层,可连接多个网段,实现数据包路由,实现部分路由器功能

路由器:工作于网络层,实现不同网段数据的转发,隔离广播域,多应用于广域网

 

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

A  01开头,0~127 默认掩码:255.0.0.0

B  10开头,128~191 默认掩码:255.255.0.0

C  110开头,192~223 默认掩码:255.255.255.0

D  1110,组播地址,224~239

E   11110,保留地址,240~255

子网掩码作用:用于计算出IP地址的网络位

 

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

(1)osi七层模型和tcp/ip模型

(2)每层功能:   

   物理层:在物理媒体上传输原始的数据比特流。

   数据链路层:将数据分成一个个数据帧,以数据帧为单位传输。有应有答,遇错重发。

   网络层:将数据分成一定长度的分组,将分组穿过通信子网,从信源选择路径后传到信宿。

   传输层:提供不具体网络的高效、经济、透明的端到端数据传输服务。

   会话层:进程间的对话也称为会话,会话层管理不同主机上各进程间的对话。

   表示层: 为应用层进程提供格式化的表示和转换数据服务。

   应用层:提供应用程序访问OSI环境的手段。

 (3)网络接口层:网络适配器、网络介质,交换机;网络层:路由器、三层交换机;传输层:;应用层。

 (4)ISO/OSI参考模型与TCP/IP协议模型中各层的对应关系:

aaaaaaaaaaaaaaa.png

 

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

      (1)编辑网络配置文件 vim /etc/sysconfig/network-scripts/ifcfg-ethX

      (2)配置内容:

                 DEVICE=ethN

                BOOTPROTO=none

                HWADDR=xxx

                ONBOOT=yes

                TYPE=Ethernet

                 UUID="92fbbbe5-2f41-4c26-a4c2-f3c3a7e1ece8"

                 USERCTL=no

                 IPADDR=xxx

                NETMASK=xxx

                GATEWAY=xxx

 

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

    (1)命令:ifconfig device ip/netmask ip addr { add | del } IFADDR dev STRING

    (2)图形配置:setupnmtui

(3)编辑配置文件:vim /etc/sysconfig/network-scripts/ifcfg-ethX

 

 

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

       #!/bin/bash

#

declare -i i

ip=172.16.250

for i in $(seq 1 254);do

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

       echo -e "\033[32m $ip.$i:host is up \033[0m"

    else

       echo -e "\033[31m $ip.$i:host is down \033[0m"

    fi

done

 

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

       DEVICE=eth#                               —》设备名称

       BOOTPROTO=none                    —dhcp表示动态获取IPstaticnone表示静态IP

       HWADDR=00:0c:29:52:59:e1      —》该网卡的mac

       IPV6INIT=no                                  —ipv6是否开启

       NM_CONTROLLED=no               —》是否开启nm管理

       ONBOOT=yes                              —》该网卡是否开机启动

       TYPE=Ethernet                             —》网卡网络的类型为以太网

        UUID="92fbbbe5-2f41-4c26-a4c2-f3c3a7e1ece8"   —》网卡的UUID标识

        USERCTL=no                              —》是否允许普通用户编辑

        IPADDR=10.0.0.219                     —ip地址

        NETMASK=255.255.255.0            —》掩码

        GATEWAY=10.0.0.1                      —》网关

         DNS#                                            —dns

 

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

      (1)临时有效。命令:ifconfig eth#:# 10.0.0.221 netmask 255.255.255.0 /ifconfig eth#:# 10.0.0.222/24

                   ip addr add 10.0.0.225/24 dev eth#

      (2)永久有效。配置文件:vim /etc/sysconfig/network-scripts/ifcfe-eth#:#

 

 

 

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

      ipifconfig:配置或查看系统IP情况

      netstat:查看当前系统的网络链接。如:netstat -tuanp

      ss:类型与netstat功能

     route:查看或添加路由。route -n route add -net|host  ip netmask mask gw gateway dev eth#

     dig/nslookup/host

 

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

     安装:rpm -ivh XXX.rpm

     升级:rpm -Uvh xxx/rpm –>后面接的套件若没有安装过,则系统将直接安装。

                rpm -Fvh xxx.rpm –>后面接的套件若没有安装过,则该套件不会安装。

     卸载:rpm -e xxx.rpm

 

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

(1)挂载光盘至/mnt

(2)开始配置本地yum,yum源为光盘

# cd /etc/yum.repos.d/                 

# mv CentOS-Base.repo CentOS-Base.repo.bak   

# vim CentOS-Media.repo             

         [c6-media]

         name=CentOS-$releasever-Media     

         baseurl=file:///mnt               

         gpgcheck=1                           

         enabled=1                            

         gpgkey=file:///mnt/RPM-GPG-KEY-CentOS-6

   (3)验证是否yum源是否成功:yum repolist c6-media

 

12、写一个脚本,完成以下功能

   (1) 假设某目录(/etc/rc.d/rc3.d/)下分别有K开头的文件和S开头的文件若干;

   (2) 显示所有以K开头的文件的文件名,并且给其附加一个stop字符串;

   (3) 显示所有以S开头的文件的文件名,并且给其附加一个start字符串;

   (4) 分别统计S开头和K开头的文件各有多少;

#!/bin/bash

#

for file in $(ls /etc/rc.d/rc3.d/);do

    if [[ $file == K* ]];then

       echo "K start:${file}stop"

       let sum1++

    elif [[ $file == S* ]];then

       echo "S start:${file}start"

       let sum2++

    fi

done

echo "Number of files at the beginning of K:$sum1"

echo "Number of files at the beginning of S:$sum2"

 

13、写一个脚本,完成以下功能

   (1) 脚本能接受用户名作为参数;

   (2) 计算此些用户的ID之和;

#!/bin/bash

#

declare -i sum=0

declare -i id=0

read -t 30 -p "input username here:" -a uname

echo "===================="

[ "${uname[*]}" == ""  ]&&echo "users is empty"&&exit 1

for i in $(seq 0 $[${#uname[@]}-1]);do

     if id ${uname[$i]} &> /dev/null;then

       id=$(cat /etc/passwd | grep "^${uname[$i]}\>" |cut -d":" -f3)

       let sum+=$id

     else

        echo "user:${uname[$i]} do not exist"

     fi

done

echo "====================="

echo "all users id sum:$sum"

 

14、写一个脚本

   (1) 传递一些目录给此脚本;

   (2) 逐个显示每个目录的所有一级文件或子目录的内容类型;

   (3) 统计一共有多少个目录;且一共显示了多少个文件的内容类型;

 

 

 

15、写一个脚本

  通过命令行传递一个参数给脚本,参数为用户名

  如果用户的id号大于等于500,则显示此用户为普通用户;

#!/bin/bash

#

if [ $# -gt 0 ];then

   for i in $(seq 1 $#);do

       if id ${!i} &>/dev/null&&[ $(cat /etc/passwd |egrep "^${!i}\>" |cut -d":" -f3) -ge 500 ];then

          echo "user:${!i} is common user "

       elif id ${!i} &>/dev/null&&[ $(cat /etc/passwd |egrep "^${!i}\>" |cut -d":" -f3) -lt 500 ];then

          echo "user:${!i} is sys user"

       else

          echo "user:${!i} is not exsit"

       fi

    done

else

   echo "usage:username.sh user1 user2 …"

fi

 

 

 

 

 

 

16、写一个脚本

   (1) 添加10用户user1-user10;密码同用户名;

   (2) 用户不存在时才添加;存在时则跳过;

   (3) 最后显示本次共添加了多少用户;

#!/bin/bash

#

function adduser {

        if id $1 &> /dev/null;then

           echo "$1 is exist!"

         else

           useradd $1 &&echo $1 |passwd –stdin $1 &>/dev/null

           [ $? -eq 0 ] && echo "Add $1 finished." && let sum++ && return 0

         fi

}

for i in {1..10};do

adduser user$i

done

echo "add user sum:$sum"

 

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

 #!/bin/bash

#

declare -i i

ip=172.16.250

for i in $(seq 20 100);do

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

       echo -e "\033[32m $ip.$i:host is up \033[0m"

    fi

done

 

18、打印九九乘法表;

#!/bin/bash

#

for j in {1..9};do

for i in $(seq 1 $j);do        

        echo -n -e "${i}X${j}=$[$i*$j]\t"

    done

echo

done

原创文章,作者:snow,如若转载,请注明出处:http://www.178linux.com/20449

(0)
上一篇 2016-06-26 22:46
下一篇 2016-06-26 22:49

相关推荐

  • 正则表达式

    1:什么是正则表达式: 简单的说,正则表达式就是处理字符串的方法,它是以行为单位进行字符串的处理行为,正则表达式通过一些特殊符号的辅助,可以让用户轻易达到查找,删除,替换某特定字符串的处理程序。 2:一些参数: grep [-A] [-B] [–color=auto] ‘收索字符串’ filename -A :后面可加数字…

    2017-07-29
  • 马哥教育网络班20期-第十周课程作业

    请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) 1)POST:加电自检 2)BOOT Sequence:按次序查找各引导设备,第一个有grub的设备即为本次启动用到设备 3)加载kernel,先自身初始化,探测可识别到的所有硬件设备,加载硬件驱动程序,以只读方式挂载根文件系统,运行用户空间的第一个应用程序:/sbin/init 4)i…

    学员作品 2016-09-08
  • 第1周作业

    第一周作业   1、描述计算机的组成及其功能。 计算机由运算器,控制器,存储器,输入装置和输出装置五大部件组成计算机 运算器,控制器:CPU 存储器:内存和硬盘 输入装置和输出装置:键鼠和显示器   2、按系列罗列Linux的发行版本,并描述不同版本的联系和区别。   linux的发行版本大致分为两大类,一类是商业公司维护的发行…

    Linux干货 2017-08-24
  • rpm软件管理工具详解

    1 Linux软件安装概述 安装程序的方式: 软件包概述 RPM RPM的缺点 RPM包 RPM分包 RPM命令的使用 rpm 包管理 升级注意项 如何安装rpm软件包 如何卸载rpm软件包 如何升级rpm软件包 如何查询rpm软件包 如何查看与rpm包相关的文件和其他信息 如何校验rpm包 RPM的数据库 1 Linux软件安装概述 安装程序的方式: 通用…

    Linux干货 2016-09-06
  • bash编程初体验(二)

    bash编程初体验(二) read if case 概述 在本篇文章中,我们将介绍bash编程中有关if语句的简单用法,if语句的基本思路是判断给定的条件是否满足,即结果是真还是假,从而选择执行哪种操作。如此,如果条件为真,if会执行一种指令,如果条件为假,if会选择执行另一种指令,这种执行就是所谓的选择结构,它能够改变命令的基本顺序流结构,以选择流的形式运…

    Linux干货 2016-08-19
  • AWK(一)

    本章内容:awk介绍;awk基本用法;awk变量;awk格式化;awk操作符;awk条件判断;awk循环;awk数组;awk函数;调用系统命令

    2018-01-01

评论列表(1条)

  • 马哥教育
    马哥教育 2016-06-29 15:24

    写的很好,可以多注意一下排版问题,加油