马哥教育网络班21期+第八周课程练习

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

网桥:也叫做桥接器,工作在OSI七层中第二层数据链路层,主要是用来连接两个局域网的一种存储或者转发设备,它能将一个大的LAN分隔
     为多个网段,也可以将多个LAN互联为一个逻辑LAN,网桥是在数据层上实现的局域网互联;即使两个采用不同数据链路层协议,不同
     的传输介质或不同的传输速率;网桥以接受、存储、地址过滤与转发的方式实现互联的网络之间的通信,并且需要互联的网络在数据
     链路层采用相同的协议。
集线器:工作在OSI七层中的第一层物理层,功能是对接受到的信号进行再生整形放大以扩大网络的传输距离,同时把所有节点集中在以它为
       中心的节点上,它属于局域网中的基础设备。
二层交换机:工作于OSI七层模型中的第二层数据链路层,故称为二层交换机,它可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并
           将这些MAC地址与对应的端口记录在自己内部的一个地址表中。
三层交换机:简单的来说就是具有部分路由功能的交换机, 三层交换机最重要的目的是加快大型局域网的数据交换,它所具有的路由功能也是
           为了这一目的服务的,能够做到一次路由,多次转发。三层交换机技术就是二层交换机+三层转发技术,传统的交换技术是在OSI
           的第二层数据链路层进行工作,而三层交换技术是在网络模型中的第三层实现了数据包的高速转发,既可实现网络路由功能,又
           可以根据不同的网络状况做到最优网络性能。
路由器:工作在OSI七层中的第三层网络层,用于连接多个逻辑上分开的网络,所谓逻辑网络是代表一个单独的网络或者一个子网, 当数据从
       一个子网传输到另外一个子网时,可以通过路由器的路由功能来完成,因此路由既有判断网络地址和选择IP路径的功能,它能在多网
       络互联环境中,建立灵活的连接。

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

IP地址可分为局域网IP与互联网IP
而局域网IP又可分为三类(局域网IP又称私有地址)
A类:10.0.0.0/8
B类:172.16.0.0/16----172.31.0.0/16
C类:192.168.0.0/24----192.168.255.0/24
互联网IP可分为5类(互联网IP又称为公有地址)
A类: 1-127    127.0.0.1为本机地址
B类:128-191
C类:192-223
D类:224-239
E类:240-254
子网掩码的表示形式可分为三种:
第一种A类网络缺省子网掩码:255.0.0.0      也可以表示为8    例:10.0.0.1/8
第二种B类网络缺省子网掩码:255.255.0.0    也可以表示为16   例:172.16.0.1/16
第三种C类网络缺省子网掩码:255.255.255.0  也可以表示为24   例:192.168.0.1/24
作用:网掩码是一个32位地址,是与IP地址结合使用的一种技术。它的主要作用有两个,一是用于屏蔽IP地址的一部分以区别网络标识和
      主机标识,并说明该IP地址是在局域网上,还是互联网上。二是用于将一个大的IP网络划分为若干小的子网络。

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

112.jpg

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

~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
HWADDR=00:0C:29:FE:4A:E5
TYPE=Ethernet
UUID=c2aae0c9-b347-49b1-8027-bf4e5e22865c
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.0.110
PREFIX=24
GATEWAY=192.168.0.1
DNS1=218.30.19.50
DNS2=61.134.1.4
~]# service network restart

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

添加IP地址
第一种
~]# ifconfig eth0 192.168.0.110/24
第二种
~]# ifconfig eyh0 192.168.0.110 netmask 255.255.255.0
第三种(只是在原来的基础上添加一个新的地址,不会对原来的地址造成影响)
~]# ip addr add 192.168.0.111/24 dev eth0
第四种(别名网卡地址)
~]# ip addr add 192.168.0.112/24 dev  eth0 lable eth0:0
删除IP地址
~]# ip addr del 192.168.0.111/24 dev eth0
删除别名网卡的IP地址
~]# ip addr del 192.168.0.112/24 dev eth0 lable eth0:0
使用命令
~]# setup
改变配置文件
~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

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

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

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

#!/bin/bash
for ((i=1;i<=254;i++));do
        ping -c 1 -w 1 172.16.250.$i &> /dev/null
        if [ $? -eq 0 ];then
                echo -e "\e[1;32m172.16.250.$i is up\e[0m"
        else
                echo -e "\e[1;31m172.16.250.$i is down\e[0m"
        fi
done

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

~]#cat /etc/sysconfig/network 
NETWORKING=yes            表示网络正在运行中  
HOSTNAME=ns1.magedu.com   计算机名
GATEWAY=192.168.0.1        网关的设置
~]# cat /etc/resolv.conf 
# Generated by NetworkManager
search magedu.com
nameserver 218.30.19.50    修改DNS
nameserver 61.134.1.4      DNS
~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0                          网卡名
HWADDR=00:0C:29:FE:4A:E5             MAC地址
TYPE=Ethernet                        连接方式(桥接)
UUID=c2aae0c9-b347-49b1-8027-bf4e5e22865c  UUID
ONBOOT=yes                                 开机自动启动
NM_CONTROLLED=yes                          
BOOTPROTO=static                           静态地址
IPADDR=192.168.0.110                       IP地址
PREFIX=24                                  子网掩码 
GATEWAY=192.168.0.1                        网关
DNS1=218.30.19.50                          DNS
DNS2=61.134.1.4                            DNS

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

~]# ip addr add 192.168.0.112/24 dev eth0
~]# ip addr add 192.168.0.113/24 dev eth0 lable eth0:0
~]# setup

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

1.jpg

2.jpg

3.jpg

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

4.jpg5.jpg

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

~]# mkdir /media/cdrom
~]# mount /dev/cdrom /media/cdrom
~]# vim /etc/yum.repos.d/CentOS-Media.repo
[c6-media]
name=CentOS-$releasever - Media
baseurl=file:///media/cdrom/        
gpgcheck=0
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

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

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

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

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

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

#!/bin/bash
#
declare -i k=0
declare -i s=0
declare -i o=0
for i in {$(ls -l /etc/rc.d/rc3.d/ |awk '{print $(NF-2)}'| sed 1d)};do
    if [[ $i =~  ^K ]];then
        echo $i stop
        let k++
    elif [[ $i =~ ^S ]];then
         echo $i start
         let s++
     else
         let o++    
     fi
done     
 echo "S开头的文件为$s个"
 echo "K开头的文件为$k个"
 echo "其他文件总共为$o个"

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

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

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

#!/bin/bah
#
declare -i sum=0
for i in $(cat /etc/passwd | awk -F: '{print $1}');do
        echo "username $i UID is $(id $i -u)"
         sum+=$(id $i -u)
done
 echo "UID sum is $sum"

14、写一个脚本

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

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

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

#!/bin/bash
#
#
declare -i dir=0
declare -i b=0
declare -i c=0
declare -i s=0
declare -i p=0
declare -i f=0
declare -i h=0

if [ $# -lt 1 ];then
  echo "Please give at least a directory"
else
  for i in $@;do
      for n in $(ls $i);do
        cd $i    		        
	if [ -b $n ];then
	  echo "$n is block device file"
          b=1
	elif [ -c $n ];then
          echo "$n is character device file"
          c=1
        elif [ -S $n ];then
          echo "$n is socket file"
          s=1
        elif [ -p $n ];then
          echo "$n is name pipes file"
          p=1
        elif [ -h $n ];then
          echo "$n is symbolic link file"
          h=1
        elif [ -d $n ];then
	  echo "$n is diretory"
          let dir++
          d=1
        elif [ -f $n ];then
          echo "$n is ordinary file"
           f=1     
        else
          echo "$n is other file"
        fi
    done
       let sum=$b+$c+$s+$p+$f+$h+$d
   done
fi
 echo "The directory is $dir"
 echo "File type class is $sum"

15、写一个脚本

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

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

#!/bin/bash
#
read -p "please enter the username:" option
     id $option &> /dev/null
     if [ $? -ne 0 ];then
      echo "user does not exist"
     else
        uid=$(id $option -u)
        if [ $uid -ge 500 ];then
        echo "$option is common user"
        else
        echo “$option is system user”  
        fi
      fi

16、写一个脚本

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

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

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

#!/bin/bash
#
declare -i name=0
for i in {1..10};do
    id user$i &> /dev/null
   if [ $? -eq 0 ];then
        echo "user$i exist"
   else
     useradd user$i && echo "user$i" | passwd --stdin user$i  > /dev/null
        let name++
   fi
done
 echo "add user sum is $name"

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

#!/bin/bash
#
ip=192.168.0.
for i in {100..120};do
   ping -c 1 -w 1  $ip$i &> /dev/null
 if [ $? -eq 0 ];then
 echo "$ip$i On line"
 fi
done

18、打印九九乘法表;

for 实现
#!/bin/bash
#
for i in {1..9};do
    for j in $(seq 1 $i);do
       echo -e -n "${j}X${i}=$[$i*$j]\t"
     done
     echo
done
while 实现
#!/bin/bash
#
declare -i i=1
declare -i j=1
while [ $i -le 9 ];do
  while [ $j -le $i ];do
    echo -e -n "${j}X${i}=$[$i*$j]\t"
    let j++
   done
    echo
    j=1
    let i++

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

(0)
上一篇 2016-09-08 18:55
下一篇 2016-09-08 18:56

相关推荐

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

    1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; 2、创建一个大小为1G的swap分区,并创建好文件系统,并启用之; 3、写一个脚本  …

    Linux干货 2016-08-08
  • day6总结

    主要内容: useradd与usermod对比 groupadd与groupmod对比 passwd与chage对比 gpasswd与groupmems对比 切换用户 chown与chgrp用法 一般权限与特殊权限 chmod用法   useradd创建用户的初始信息存放在/etc/login.defs和/etc//default/useradd文…

    系统运维 2016-08-08
  • MySQL与nfs的实验

    (1) 创建一个共享mydata,路径为/mysql/data,客户端1挂载至/mydata;而后客户端1主机安装mysql或mariadb,将数据目录设定为/mydata,要确保mysql服务能正常 运行,但数据目录位于samba server上; (2) 客户端2主机使用类似客户端1主机的方式挂载mydata共享至本地的/mydata目录,而后,直接安装…

    Linux干货 2016-10-30
  • thinkpad e420编译安装thinkfan控制风扇

    我的笔记本是win7+linuxmint双系统,在进入linuxmint长时间运行后会明显感觉发热,我发现笔记本风扇的转数过低,导致热量不能发散出去,解决方法就是安装thinkfan风扇控制软件。 1、下载软件包 https://sourceforge.net/projects/thinkfan/ 最新版本是1.0beta2 2、编译安装 编译前确保安装过c…

    Linux干货 2017-03-09
  • N25-第八周

    1、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态; 在线的主机使用绿色显示; 不在线的主使用红色显示; #!/bin/bash ipnet=172.16.250. trap ‘trap_action’ INT trap_action() { break return 1 } for ((i=1…

    Linux干货 2017-05-27
  • Zabbix通过邮件报警

                    Zabbix通过邮件报警 前言 本篇文章转自我的个人博客 http://anyisalin.com 欢迎大家访问 这次的内容大部分都是操作, 但是大家需要对定…

    2016-05-13