N22-第八周作业

第八周

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

     集线器的主要功能是对接收到的信号进行再生整形放大,以扩大网络的传输距离,同时把所有节点集中在以它为中心的节点上。它工作于OSI(开放系统互联参考模型)参考模型第一层,即“物理层”。

     网桥将两个相似的网络连接起来,并对网络数据的流通进行管理。它工作于数据链路层,不但能扩展网络的距离或范围,而且可提高网络的性能、可靠性和安全性。

     二层交换机工作于OSI模型的第2层(数据链路层),故而称为二层交换机。二层交换技术的发展已经比较成熟,二层交换机属数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。

     三层交换机就是具有部分路由器功能的交换机,三层交换机的最重要目的是加快大型局域网内部的数据交换,所具有的路由功能也是为这目的服务的,能够做到一次路由,多次转发。对于数据包转发等规律性的过程由硬件高速实现,而像路由信息更新、路由表维护、路由计算、路由确定等功能,由软件实现。三层交换技术就是二层交换技术+三层转发技术。传统交换技术是在OSI网络标准模型第二层——数据链路层进行操作的,而三层交换技术是在网络模型中的第三层实现了数据包的高速转发,既可实现网络路由功能,又可根据不同网络状况做到最优网络性能。

     路由器(Router),是连接因特网中各局域网、广域网的设备,它会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送信号。路由和交换机之间的主要区别就是交换机发生在OSI参考模型第二层(数据链路层),而路由发生在第三层,即网络层。路由器(Router)又称网关设备(Gateway)是用于连接多个逻辑上分开的网络,所谓逻辑网络是代表一个单独的网络或者一个子网。当数据从一个子网传输到另一个子网时,可通过路由器的路由功能来完成。因此,路由器具有判断网络地址和选择IP路径的功能,它能在多网络互联环境中,建立灵活的连接,可用完全不同的数据分组和介质访问方法连接各种子网,路由器只接受源站或其他路由器的信息,属网络层的一种互联设备。

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

A类IP地址 地址范围1.0.0.0到127.255.255.255,默认掩码255.0.0.0

B类IP地址地址范围128.0.0.0-191.255.255.255,默认掩码255.255.0.0

C类IP地址范围192.0.0.0-223.255.255.255,默认掩码255.255.255.0

D类是组播地址,范围从224.0.0.0到239.255.255.255,

E类作为多播和保留使用

以下列出留用的内部私有地址

A类 10.0.0.0–10.255.255.255

B类 172.16.0.0–172.31.255.255

C类 192.168.0.0–192.168.255.255

子网掩码是网络位全是1的表现形式,也可以使用‘/+网络位’来表示。其作用是表现IP地址的网络位数。

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

    计算机网络模型:

  472309f79052982279f13de4d5ca7bcb0b46d4d2.jpg

TCP/IP模型

430c46359ac9c382d3846b37c218c977.png

    

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

# vim /etc/sysconfig/network-scripts/ifcfg-eth0

ONBOOT=yes

BOOTPROTO=static

IPADDR=192.168.1.4(这里指定需要接入网络的静态ip地址)

NETMASK=255.255.255.0(这里指定子网掩码)

GATEWAY=192.168.0.1(这里指定网关)

# vim /etc/resolv.conf

nameserver 202.106.0.20 

nameserver 8.8.8.8

# service network restart

以上指定DNS可以添加三个DNS。

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

对于centos6

setup ->networkconfigure

对于centos7

nmtui ->networkconfigure

公用:

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

ifconfig eth0 192.168.1.1/24 up

ip addr add 192.168.1.1/24 dev eth0 

这两种方式是临时生效开机或者重启网络服务失效

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

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

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

#!/bin/bash

#

for i in `seq 1 1 254`;do

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

        echo -e "\033[32;1m 172.16.250.$i is up! \033[0m"

        else

        echo -e "\033[31;1m 172.16.250.$i is down! \033[0m"

        fi

done

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

配置文件对应的值

DEVICE=eth0 #设备名称

HWADDR=08:00:27:8E:A3:28  #设备对应的mac地址

TYPE=Ethernet  #网络类型

UUID=523c875f-5292-4dd5-9dec-03dd3bfa8c42 # 设备所对应的唯一识别码

ONBOOT=yes #是否开机自启动

NM_CONTROLLED=yes # 是否使用netmanger 管理

BOOTPROTO=dhcp # 获取IP地址方式  还可以有值是static 则是静态获取IP地址

USERCTL=no # 

PEERDNS=yes # 是否使用DHCP获取的DNS地址

IPV6INIT=no # 是否启动IPv6地址

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

# ifconfig eth0:0 192.168.1.22/24 up

# ip addr add 192.168.1.22/24 dev eth0

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

ifcfg家族

ifconfig:

ifconfig:查看网卡接口状态

-a:查看全部网口信息状态

ifconfig eth0 192.168.1.1/24 up

ifconfig eth0:0 192.168.1.1/24 up

route

rounte -n

route add -net 192.168.1.0/24 192.168.2.1

netstat

netstat -tunlp

route2家族

ip

link:查看网卡接口状态

set eth0 up:配置IP信息

addr:查看网络配置详细信息

route:查看路由表信息

ss

ss -tunlp

nm家族

nmtui:图形界面配置网络

nmcli:文本界面下配置网络

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

# rpm -ivh RPMPACK

# yum install RPMPACK

# rpm -Uvh RPMPACK

# rpm -Fvh RPMPACK

# yum update RPMPACK

# rpm -ql

# rpm -qa

# rpm -qf

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

1、把光盘镜像利用文件传输软件上传到服务器上面

2、挂载本地光盘镜像 mount /dev/cdrom /cdrom

3、# vim /etc/yum.repo.d/cdrom.repo

[cdrom]

name=cdrom

baseurl=file:///cdrom

enabled=1

gpgcheck=0

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

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

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

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

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

#!/bin/bash

#

declare -i Ssum=0

declare -i Esum=0

Start=`ls /etc/rc.d/rc3.d|awk '/^S/{print $0}'`

for i in $Start;do

mv /etc/rc.d/rc3.d/$i /etc/rc.d/rc3.d/${i}start && echo "modify already" && let Ssum=$Ssum+1

done

End=`ls /etc/rc.d/rc3.d|awk '/^K/{print $0}'`

for j in $End;do

mv /etc/rc.d/rc3.d/$j /etc/rc.d/rc3.d/${j}stop && echo "modify already" && let Esum=$Esum+1

done

echo -e "The number of S begin is $Ssum\nThe number of K begin is $Esum"

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

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

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

    #!/bin/bash

#

if [ $# -gt 0 ];then

for i in $*;do

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

Uid=`id -u $i&>/dev/null`

let sum=$sum+$Uid

else

echo "$i not exit"

continue

fi

done

else

echo "please provide least one user" && exit 1

fi

if [ -z $sum ];then

echo "no sum"

else

echo "The sum of usersid is $sum"

fi

14、写一个脚本

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

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

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

#!/bin/bash

#

declare -i sum=0

declare -i Fsum=0

if [ $# -lt 1 ];then

echo "please provide least one dir" && exit 1

else

for i in $*;do

if [ -d $i ];then

echo "$i" && let sum=$sum+1

for j in `ls $i`;do

type=`stat $i/$j|sed -n '2p'|awk '{print $5}'` && let Fsum=$Fsum+1

echo "—–$j is $type"

done

else

echo "$i is not a dir"

continue

fi

done

fi

echo "The number of dir is $sum"

echo "The number of common file is $Fsum"

15、写一个脚本

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

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

#!/bin/bash

#

if [ $# -ne 1 ];then

echo "privide a username"

exit 1

else

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

[ `id -u $1` -gt 500 ] && echo "common user" || echo "system or admin user"

else echo "no such user"

fi

fi

16、写一个脚本

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

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

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

#!/bin/bash

        #

        declare -i SUM=0

        for i in `seq 1 1 21`;do

                        id user$i&>/dev/null && echo "user exit" && continue

                        useradd user$i&>/dev/null && echo "user already add" && let SUM=$SUM+1

        done

        echo "The sum is $SUM"

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

#!/bin/bash

#

for i in `seq 20 1 100`;do

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

echo "172.16.250.$i exit"

else

echo "172.16.250.$i off"

continue

fi

done

18、打印九九乘法表;

#!/bin/bash

#

for i in `seq 1 1 9`;do

for j in `seq 1 1 $i`;do

echo -n -e "$j×$i=$[$j*$i]\t"

done

echo

done

原创文章,作者:N22-北京-喜欢就好,如若转载,请注明出处:http://www.178linux.com/50073

(0)
N22-北京-喜欢就好N22-北京-喜欢就好
上一篇 2016-10-09 09:05
下一篇 2016-10-09 09:06

相关推荐

  • shell脚本之批量添加用户

        没错,这是一个简单的脚本,不写不知道,写了才发现自己多垃圾。     我是一名普通的公司网络管理,接触linux不长,一直理想都是和马哥学习linux,可惜因为拖家带口的原因,没办法交学费和马哥学习,心里小小遗憾吧。每天看着马哥的文章以及百度搜索的视频文章学习,感觉自己学…

    Linux干货 2016-07-07
  • LInux基本常识和几个基本命令的用法

    1.默认系统管理员root 1)在Linux中,创建系统的同时,会创建一个超级用户,对系统拥有绝对权限。 2)每个账户的文件都被放在各自的家目录中,管理员家目录:/root 3)每个帐号会有一个uid号对应,管理员uid=0   cengOS7之前的版本一般用户uid从500开始   centOS7之后的版本一般用户uid从1000开始 …

    Linux干货 2016-07-23
  • awk

    GNU awkGNU awk 2 本章内容 awk介绍 awk基本用法 awk变量 awk格式化 awk操作符 awk条件判断 awk循环 awk数组 awk函数 调用系统命令 3 awk awk: Aho, Weinberger, Kernighan,报告生成器,格式化文本输出 有多种版本:New awk(nawk),GNU awk…

    Linux干货 2016-09-14
  • 查找帮助功能、Linux文件系统目录标准LHS介绍

    查找帮助 命令自带   COMMAND –help                      COMMAND -h 使用手册 man COMMAND…

    Linux干货 2016-10-30
  • 一次简单的内核编译(二)

      前言:     此次编译是继一次简单的内核编译(一)进行操作编译的,请先查看第一篇再来看此片文章 一、使用busybox代替自己制作的init脚本,实现内核启动;  1、在这里我们使用静态编译busybox,所以需要先安装glibc-static依赖包,如果不安装会报错     2、解…

    Linux干货 2015-06-01
  • 树 非线性结构 树是n(n >= 0)个元素的集合: (1)每个元素称为结点(node); (2)有一个特定的结点,称为根结点或根(root); (3)除根结点外,其余结点被分成m(m>=0)个互不相交的有限集合,而每个子集又都是一棵树(称为原树的子树Subtree) 注意 n = 0时,称为空树 树只有一个特殊的没有前驱的元素,称为树的根(Ro…

    2017-10-16

评论列表(1条)

  • luoweiro
    luoweiro 2016-10-11 23:33

    通过很形象的经理的例子来类比ISO和TCP/IP模型,这部分是基本技能,一定要掌握熟练。