N21沉舟-第八周作业

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

#网桥:链接层设备,基于MAC地址过滤。
#集线器:物理层设备,基本都属于半双工模式。集线器与网桥在现在的局域网中基本都不用了。
#二层交换机:工作在数据链路层,基本MAC转发数据,功能齐全的可支持VLAN等功能。常见的有100/1000M、16口/24口/48口。
#三层交换机:三层交换机可以处理第三层网络层协议,用于连接不同网段,通过对缺省网关的查询学习来建立两个网段之间的直接连接。
#路由器:一般用于局域网的出口、不同网络之间的连接的位置,常用的功能主要有各种路由协议、VPN、NAT等功能

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

#IP地址分为:
    A类:1.0.0.1-126.255.255.254
    网络数:126
    每个网络中的主机数:2^24-2
    默认子网掩码:255.0.0.0
    私网地址:10.0.0.0/8-10.255.255.255/8
    B类:128.0.0.1-191.255.255.254
    网络数:2^14
    每个网络中的主机数:2^16-2
    默认子网掩码:255.255.0.0
    私网地址:172.16.0.0/16-172.31.255.255/16
    C类:192.0.0.1-223.255.255.254
    网络数:2^21
    每个网络中的主机数:2^8-2
    默认子网掩码:255.255.255.0
    私网地址:192.168.0.0/24-192.168.255.255/24
    D类:组播 224.0.0.1-239.255.255.254
    E类:240.0.0.1-255.255.255.254
#子网掩码:将IP地址划分为网络地址与主机地址,与IP地址相与可计算出相应主机的网络地址

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

OSI:物理层(集线器,网线,光纤),数据链路层(网卡、二层交换机),网络层(路由器,三层交换机),传输层(TCP,UDP数据包),会话层(控制管理会话),表示层(编码,加密),应用层(应用层协议,软件)
TCP/IP:网络连接接口层,网络层,传输层,应用层

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

a、修改/etc/sysconfig/network配套文件中的hostname
b、修改/etc/sysconfig/network-script/ifcfg-eth0文件,手动指定IPADDR,GETWAY ,NATMARSK, DNS{1,2,3}
c、service network restart 重启网络服务

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

1、命令行命令临时修改网络地址,退出当前shell后,设置将失效
     ip addr add 192.168.50.199/24 dev eth0
2、修改/etc/sysconfig/network-script/ifcfg-eth0文件,手动指定IP address, getway , netmask, dns

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

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

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

#!/bin/bash
#
 net='172.16.250.'
echo $net
for i in {1..254};do
  ping -w 2 $net$i &>>/dev/null
  if [ $? -eq 0 ];then
     echo -e "\e[1;32m $net$i is alive \e[0m"
  else
     echo -e "\e[1;31m $net$i is down  \e[0m"
  fi
done

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

DEVICE                  #网卡名
BOOTPROTO                 #ip地址分配方式, dhcp、static
HWADDR                  #MAC地址
NM_CONTROLLED="yes"            #network mamager参数,
ONBOOT                  #网卡是否开机激活
TYPE                   #网络类型
IPV6INIT=no                #禁止IPV6
USERCTL=no                 #是否允许非root用户控制该设备,为no,只能root用户更改
IPADDR=                  #IP ADDR
GATEWAY                  #gatway地址
NETMASK                  #掩码
DNS2                   #dns2地址
DNS1                   #dns1地址

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

a、ip addr add 192.168.100.10/24 dev eth0:1
b、新建/etc/sysconfit/network-script/ifcfg-eth0:1文件,在文件中配置相关信息
      DEVICE=eth0:0
         ONBOOT=yes
      BOOTPROTO=static
      IPADDR=192.168.100.10
      NETMASK=255.255.255.0

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

 网络管理.jpg

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

    程序包管理.jpg   

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

   1、mount /mnt/cdrom /dev/cdrom
   2、cp –r /dev/cdrom /media/images
   3、vim /etc/yum.repo.d/localfile.repo
         [localfile]
         name=local repo
         baseurl=file:///media/images
         enable=1
         gpgcheck=0
   4、yum repolist

                                     

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

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

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

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

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

#!/bin/bash
    k=0
    s=0
    for i in $(ls /etc/rc.d/rc3.d/K* | grep -o "[^/]*$"); do
        echo "$i stop"
        let k=$k+1
    done
    for i in $(ls /etc/rc.d/rc3.d/S* | grep -o "[^/]*$");do
        echo "$i start"
        let s=$s+1
    done
    echo "K file $k; S file $s"

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

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

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

#!/bin/bash
declare -i uidsum=0
if [ $# -lt 1 ];then
   echo “must have a user name.”
   exit 1
fi
for i in $@;do
  uuid=$(grep "^$i" /etc/passwd| cut -d: -f3)
  echo $uuid
 uidsum=$uidsum+$uuid
done
 echo $uidsum

14、写一个脚本

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

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

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

#!/bin/bash
#
declare -i h=0
declare -i m=0
for i in $@;do
    for n in $(ls $i);do
filetype=`file $n| cut -d: -f2`
  echo "$n is a $filetype"
  let m++  #echo $filetype   
    echo $filetype |grep "directory"  &>/dev/null
     if [ $? -eq 0 ];then
       let h++
fi
done
 
done
echo "Directory count is $h"
echo "File count is $[$m-$h]"

15、写一个脚本

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

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

#!/bin/bash
#
while [ 1 -eq 1 ];do
read -p "please input a username:" username
case $username in
exit)
    exit 127
     ;;
*)
/etc/passwd `
     uuid=`grep "^$username\>" /etc/passwd |cut -d: -f3`
if [ $uuid -gt 500 ];then
         echo "$username is a normal-user"
     else
         echo "$username is a admin_user"
       fi
     ;;
esac
done

16、写一个脚本

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

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

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

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

 

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

#!/bin/bash
net='192.168.50.'
for i in {1..20};do
   ping -c 1 -w 1 ${net}${i} &>/dev/null
   if [ $? -eq 0 ];then
       echo "${net}${i} is up"
   fi
done

18、打印九九乘法表;

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

原创文章,作者:N21-沉舟,如若转载,请注明出处:http://www.178linux.com/39163

(0)
上一篇 2016-08-24 10:26
下一篇 2016-08-24 10:28

相关推荐

  • linux基础学习-第八天

    2016-08-08 授课内容: 处理文本的工具sed vim编辑器 Shell脚本编程基础介绍 sed:sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),     接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。默认不编辑原文件,仅…

    Linux干货 2016-08-10
  • mysql编译安装

    MYSQL编译安装:参考(http://v.youku.com/v_show/id_XMjc4MDUwNjYyOA==.html?from=s1.8-1-1.2&spm=a2h0k.8191407.0.0)(http://oldboy.blog.51cto.com/2561410/1917295)     编译安装mysql,最好…

    Linux干货 2017-06-09
  • 磁盘管理之LVM

    1、什么是LVM     LVM(Logical Volume Manager)逻辑卷管理,是linux环境下将一种将一个或多个硬盘的分区在逻辑上集合来呈现给上层应用,对磁盘实现动态管理的机制。相对于普通的磁盘分区有很大的灵活性,使用LVM在一定程度上就可以解决普通磁盘分区带来的问题。 2、专业术语     &nbsp…

    Linux干货 2016-09-02
  • N25第五周 grep 和find 命令使用示例

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

    Linux干货 2016-12-25
  • MAN手册各章节功能介绍及快捷键键位整理

    Linux系统中man命令是用于查询命令使用手册的,使用格式 man + 命令。 当使用man命令之后,系统就会在指定的路径中查询命令的使用手册。其中制定路径为$PATH变量指定的路径,或者/etc/man.config文件中MANPATH中指定的路径  其中/etc/man.config中有如下内容: MANPATH /usr/man …

    Linux干货 2016-10-17
  • find命令简单总结

     find     字符串类查询:            -type   //根据文件类型查找       &…

    Linux干货 2015-09-14

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-19 18:06

    希望能把画图的传统一直保持下去,看好你哦