马哥教育网络班20期+第八周博客作业

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

网桥(Bridge)

    就是个硬件网络协议翻译器,如今交换机也包含这个功能,操作系统也可以是网桥,现在网桥的概念已经淡出

集线器(HUB)

    将网线集中到一起,对收到的信号进行同步整形放大,以扩大传输距离,是中继器的一种形式,信息是通过广播的方式传送的

交换机(Switch)

    是HUB的升级换代产品,在通信系统中自动完成信息交换的设备。它具备自动寻址和交换能力,会根据内存中的地址表对照确定目标MAC的NIC所在端口,通过内部交换矩阵迅速发送到目的端口,若目的MAC不存在,才会用广播的形式。

    二层交换机    

        原理同上,工作于数据链路层

    三层交换机

        在二层基础上,具有部分路由器功能,目的加快大型局域网内部的数据交换,能够实现一次路由,多次转发

路由器(route)

    简单来说是将不同网络之间互相连接一起,实现相互间的通信。路由器构成了Internet的骨架。

    

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

IP地址分为

    A类1.0.0.0到126.255.255.255

    B类128.0.0.0到191.255.255.255

    C类192.0.0.0到223.255.255.255

子网掩码

    4个网段,每个网络数值区间为0~255

    子网掩码的作用将IP地址分成网络地址和主机地址两部分

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

    OSI参考模型        TCP/IP参考模型

    应用层  ———–            

    表示层  ———–

    会话层  ——————   应用层

    传输层  ——————   传输层

    网络层  ——————   网络互联层

    数据链路层 ——–  

    物理层  ——————   主机到网络层

应用层:为操作系统或网络应用程序提供访问网络服务的几口。Telenet、FTP、HTTP、SNMP等

表示层:二进制传输。将会话层的数据或信息变换成一个可以被应用层理解的格式。数据转换包括数据的加密、压缩、格式转换等

会话层:介质访问。会话层管理主机之间的绘画进程,即负责建立、管理、终止进程之间的会话。

传输层:寻址和最短路径。可靠或不可靠传输,TCP、UDP、SPX等。

网络层:端到端的连接。负责对子网间的数据包进行路由选择,还可以实现拥塞控制、网际互连等。IP、IPX、RIP、OSPF等

数据链路层:主机间通信。在不可靠的物理介质上提供可靠的传输。SDLC、HDLC、PPP、STP

物理层:数据表示。物理层规定了激活、维持、关闭通信点之间的机械特性、电气特性、功能特性以及过程特性。

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

vi /etc/sysconfig/network-scripts/ifcfg-eth0
BOOTPROTO=dhcp
或者
BOOTPROTO=static
IPADDR=为固定IP
NETMASK=子网掩码
GATEWAY=网管

ifup eth0

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

vi /etc/sysconfig/network-scripts/ifcfg-eth0

ifconfig eth0 xxx.xxx.xxx.xxx
route add default gw xxx.xxx.xxx.xxx

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

    在线的主机使用绿色显示

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

[root@llww3317 tmp]# ip add
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether 00:0c:29:04:b7:19 brd ff:ff:ff:ff:ff:ff
    inet 192.168.2.107/24 brd 192.168.2.255 scope global eth0
    inet 183.156.202.213/20 brd 183.156.207.255 scope global eth0
    inet6 fe80::20c:29ff:fe04:b719/64 scope link 
       valid_lft forever preferred_lft forever
[root@llww3317 tmp]# cat ping.sh
#!/bin/bash
#
ip="183.156.202."
for i in {1..255};do
if  ping -c 1  $ip$i >/dev/null ;then
 echo -e "$ip$i\t[\033[32;1m Connected \033[0m]"
else
 echo -e "$ip$i\t[\033[31;1m Disconnect \033[0m]"
fi


done

blob.png

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

DEVICE=eth0                                        //设备名称
TYPE=Ethernet                                      //网卡类型
UUID=7a8bfd73-eea3-4830-b4f8-5840b359c0a8          //网卡的UUID
ONBOOT=yes                                         //是否开机启动
NM_CONTROLLED=yes                                  //修改配置文件后实时生效
BOOTPROTO=dhcp                                     //启动方式,有三种dhcp、static、none
HWADDR=00:0C:29:04:B7:19                           //网卡MAC地址
DEFROUTE=yes                                       //默认路由
PEERDNS=yes                                        //dhcp默认选项,自动修改resolv.conf
PEERROUTES=yes                                     //dhcp默认选项,自动修改路由信息
IPV4_FAILURE_FATAL=yes                             //是否启用IPV4
IPV6INIT=no                                        //是否启用IPV6
NAME="System eth0"                                 //系统名称

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

vi /etc/sysconfig/network-scripts/ifcfg-eh0                           修改网络配置文件
ip addr add 192.168.1.100/24 dev eth0                        临时添加IP
ifconfig eth0 192.168.10.50 netmask 255.255.255.0                        临时添加IP

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

ifconfig eth0 192.168.10.50 netmask 255.255.255.0            临时添加IP    

ip addr add 192.168.1.100/24 dev eth0                       临时添加IP

route add default gw 192.168.0.1                             添加默认网关
route add -host 192.168.1.3 gw 172.16.0.1 dev eth0               添加到主机的路由表
route add -net 192.168.0.0/24 gw 172.16.0.1 dev eth0             添加到网络段的路由表

netstat -tan
ss  -tul

CentOS 7
			 		nmcli c modify eth0 ipv4.addresses 172.16.100.12/16
			 		nmcli c down eth0;nmcli c up eth0

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

rpm
    参数: 
        -a 所有包
        -f 指定的文件由哪些程序包生成
        -R 查询指定的程序包的依赖关系
        -q 来查询已安装软件包的数据库
        -i 显示软件包信息,如描述, 发行号, 尺寸, 构建日期, 安装日期, 平台, 以及其它一些各类信息。
        -l 显示软件包中的文件列表
        -e 卸载
        -U 有旧的程序就升级,没有就安装
        -F 有旧的程序就升级,没有就不安装

可以用yum来维护管理        
yum
    参数:
        list 显示程序包
        install 安装
        reinstall 重新安装
        update 升级
        downgrade 降级
        remove 卸载
        info 查看程序包信息

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

vi /etc/yum.repos.d/CentOS-Media.repo  修改enalbe=1,添加cost=500,优先使用cdrom里的资源

name=CentOS-$releasever - Media
baseurl=file:///media/CentOS/
        file:///media/cdrom/
        file:///media/cdrecorder/
gpgcheck=1
enabled=1
cost=500
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

[root@llww3317 tmp]# mkdir /media/cdrom
[root@llww3317 tmp]# createrepo /media/cdrom
[root@llww3317 tmp]# mount /dev/cdrom /media/cdrom
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@llww3317 ~]# yum install tree
已加载插件:fastestmirror, refresh-packagekit, security
设置安装进程
仓库 'c6-media' 在配置文件中未指定名字,使用标识代替
Loading mirror speeds from cached hostfile
 * base: centos.ustc.edu.cn
 * centosplus: mirrors.163.com
 * extras: mirrors.163.com
 * updates: mirrors.163.com
解决依赖关系
--> 执行事务检查
---> Package tree.x86_64 0:1.5.3-3.el6 will be 安装
--> 完成依赖关系计算

依赖关系解决

============================================================================================================================================================================================================
 软件包                                        架构                                            版本                                                 仓库                                               大小
============================================================================================================================================================================================================
正在安装:
 tree                                          x86_64                                          1.5.3-3.el6                                          c6-media                                           36 k

事务概要
============================================================================================================================================================================================================
Install       1 Package(s)

总下载量:36 k
Installed size: 65 k
确定吗?[y/N]:

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

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

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

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

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

[root@llww3317 tmp]# cat 12.sh
#!/bin/bash
#
S=0
K=0
for i in $( ls /etc/rc.d/rc3.d/K*|egrep -o "[^/]*$");do
        echo "$i stop"
let     K+=1
done
for i in $( ls /etc/rc.d/rc3.d/S*|egrep -o "[^/]*$");do
        echo "$i start"
let     S+=1
done
echo "K:$K,S:$S"
[root@llww3317 tmp]# bash 12.sh
K01smartd stop
K02oddjobd stop
K05wdaemon stop
K10psacct stop
K10saslauthd stop
K15htcacheclean stop
K15httpd stop
K30spice-vdagentd stop
K50dnsmasq stop
K50kdump stop
K60nfs stop
K61nfs-rdma stop
K69rpcsvcgssd stop
K73winbind stop
K74ntpd stop
K75ntpdate stop
K75quota_nld stop
K76ypbind stop
K83named stop
K84wpa_supplicant stop
K87restorecond stop
K88sssd stop
K89netconsole stop
K89rdisc stop
K92pppoe-server stop
K95firstboot stop
K95rdma stop
K99rngd stop
S01sysstat start
S02lvm2-monitor start
S08ip6tables start
S08iptables start
S10network start
S11auditd start
S11portreserve start
S12rsyslog start
S13cpuspeed start
S13irqbalance start
S13rpcbind start
S15mdmonitor start
S22messagebus start
S23NetworkManager start
S24nfslock start
S24rpcgssd start
S25blk-availability start
S25cups start
S25netfs start
S26acpid start
S26haldaemon start
S26udev-post start
S28autofs start
S50bluetooth start
S55sshd start
S80postfix start
S82abrt-ccpp start
S82abrtd start
S90crond start
S95atd start
S99certmonger start
S99local start
K:28,S:32

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

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

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

#!/bin/bash
#
sum=0
function user_sum {
echo -n "Enter user:    "
read name
if [ $name = "exit" ];then
exit 0
else
if id $name &>/dev/null;then
let sum+=$(cat /etc/passwd|grep ^$name|cut -d: -f3)
echo $sum
user_sum
else
echo "retry input user"
user_sum
fi
fi

}

user_sum
[root@llww3317 tmp]# bash 13.sh
Enter user:    root
0
Enter user:    namd
retry input user
Enter user:    named
25
Enter user:    magedu
525
Enter user:    exit

14、写一个脚本

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

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

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

[root@llww3317 tmp]# more 14.sh
#!/bin/bash
#
d=0
f=0
for i in $*;do
if [ -d $i ];then
  for j in `ls $i`;do
        if [ -d $i/$j ];then
          let d+=1
        elif [ -f $i/$j ];then
          let f+=1
        fi
done
fi
done
echo "sum_directory:$d,sum_files:$f"
[root@llww3317 tmp]# bash 14.sh /etc
sum_directory:124,sum_files:133
[root@llww3317 tmp]# bash 14.sh /etc /tmp
sum_directory:125,sum_files:134

15、写一个脚本

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

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

#!/bin/bash
#
if id $1 &>/dev/null;then
if [  $(id -u $1) -ge 500 ];then
echo "normal user"
fi
fi
[root@llww3317 tmp]# bash 15.sh magedu
normal user

16、写一个脚本

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

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

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

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

18、打印九九乘法表

#!/bin/bash
#
for i in {1..9};do
  for j in $(seq 1 $i);do
        echo -ne "$j*$i=$((i*j))\t"

  done
echo -ne "\n"
done
1*1=1
1*2=2   2*2=4
1*3=3   2*3=6   3*3=9
1*4=4   2*4=8   3*4=12  4*4=16
1*5=5   2*5=10  3*5=15  4*5=20  5*5=25
1*6=6   2*6=12  3*6=18  4*6=24  5*6=30  6*6=36
1*7=7   2*7=14  3*7=21  4*7=28  5*7=35  6*7=42  7*7=49
1*8=8   2*8=16  3*8=24  4*8=32  5*8=40  6*8=48  7*8=56  8*8=64
1*9=9   2*9=18  3*9=27  4*9=36  5*9=45  6*9=54  7*9=63  8*9=72  9*9=81

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

(0)
上一篇 2016-08-08 20:22
下一篇 2016-08-08 21:57

相关推荐

  • 8.3_Linux习题和作业

    课堂习题 1.当用户xiaoming对/testdir 目录无执行权限时,意味着无法做哪些操作? 答:不能cd进该目录 2.当用户xiaoqiang对/testdir 目录无读权限时,意味着无法做哪些操作? 答:不能查看目录内的文件列表,不能cd,也不能查看目录里面文件的元数据 3.当用户wangcai 对/testdir 目录无写权限时,该目录下的只读文件…

    Linux干货 2016-08-04
  • 网络班第七周 作业

    1、创建一个10G分区,并格式为ext4文件系统 (1) 要求其block大小为2048,预留空间百分比为2,卷标为MYDATA,默认挂载属性包含acl (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳 创建了一个20G的SCSI硬盘 fdisk /dev/sdb 创建ext4文件系统 ~]# mke2fs -…

    2017-09-16
  • 第六周作业补充-vim简介及其使用方法详细介绍

    What       Vim是由Vi发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在Unix& Unix Like操作系统中被广泛使用。和Emacs并列成为Unix& Unix Like操作系统中最受欢迎的文本编辑器 When& Who  &nb…

    Linux干货 2016-09-26
  • linux文本处理三剑客-sed

    sed 是什么? sed是一种流编辑器,它是文本处理中非常中的工具,在linux中被称为linux文本处理三剑客之一,能够完美的配合正则表达式使用,功能不同凡响。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文…

    Linux干货 2017-03-15
  • 终于成为马帮的成员了

    终于成为马帮的成员了

    Linux干货 2016-09-18
  • shell编程——让你又爱又恨的东西

    变量类型:      不同的数据类型在系统中所占资源不同,并且表示的范围也不同      数值型:          短整型short:      &…

    Linux干货 2016-08-12

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-12 14:13

    写的很好,排版也很棒,加油