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)
N21-沉舟N21-沉舟
上一篇 2016-08-24
下一篇 2016-08-24

相关推荐

  • sed工具的基本用法

    sed -n(不输出模式,不自动打印) sed -d(删除匹配到的内容) sed-e(多点编辑) sed-r(支持扩展正则表达式) sed#,#(地址定界,在此范围中匹配) sed 1~2   sed 2~2 (找奇数行和偶数行) sed =(为打印到的内容编辑行号)  sed!(取反) sed s///(查找替换,支持使用其他…

    Linux干货 2017-05-02
  • sed

    复制/etc/rc.d/rc.sysinit文件到/tmp目录中,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首家#; 2.复制/boot/grub/grub.conf至/tmp中,删除/tmp/grub.conf文件中的行首的空白字符 3.删除/tmp/rc.sysinit文件中的以#开头,且后面跟了一个至少一个空白字符的行行的#…

    Linux干货 2016-12-04
  • 文件查找

        Linux上的所有资源都以文件的形式存在,如果是手工查找的话,势必会浪费太多的时间,这里推荐俩款大家用于查找的工具。 文件查找    文件查找经常用到的俩款软件,locate和find    二者区别 locate:1) 非实时查找;    &nbsp…

    Linux干货 2016-08-18
  • Linux 发展史

    Linux 发展史 一、Linux 系统概述     首先大家需要明白,Linux 只是内核,没有应用程序,如果想有应用程序就需要GNU 组织来提供应用程序,GNU其实就是一个开源组织,这就要说GNU 和GPL 的概念了,其实GNU可以看作就是软件行业的共产党组织 而GPL 就是共产党宣言 为全人类服务。所以说GNU 和 LIN…

    Linux干货 2016-10-19
  • 笔记一.如何使用VMWare Workstations 12 创建虚拟机

    笔记一.如何使用VMWare Workstations 12 创建虚拟机   一、准备工作 1.下载并安装VMWare Workstations 12 http://www.epinv.com/post/6304.html 下载链接 二、创建虚拟机步骤 1.打开VMWare Workstations 12 选择创建虚拟机 2.在创建虚拟机…

    Linux干货 2017-02-14
  • AWK基础用法

    AWK: print 例子:给没个/etc/passwd下的用户都打招呼hello 答案: awk ‘{print “hello:”$1}’ /etc/passwd 内建变量 FS : 输入分隔符 OFS: 输出分隔符 RS : 行输入分隔符 ORS: 行输出分割符 NF : 字段数 NR : 行号数 FNR: 每个文件的行号数 ARGC: 参数个数 ARG…

    Linux干货 2017-05-22

评论列表(1条)

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

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