【linux基础】第八周作业

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


网桥


集线器


二层交换机


三层交换机


路由器


功能


连接连个不同的网段


多端口的中继器,数据信号广播转发


工作在数据链路层,数据寻址交换


工作在网络层,具有转发功能


NAT,网关设备,用于分割网络


使用场景


正在退出


信号整合放大


局域网内部


局域网内部


局域网到互联网入口


区别


功能不同且工作在不同的层次和场景

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


范围


子网掩码


形式


作用


A


1.0.0.0-126.255.255.255


*/8或255.0.0.0


10.0.0.0-10.255.255.255局域


B


128.0.0.0-191.255.255.255


*/16或255.255.0.0


127.0.0.1专用,局域

172.16.0.0-172.31.255.255


C


192.0.0.0-223.255.255.255


*/24或255.255.255.0


192.168.0.0/24局域


D


224.0.0.0-239.255.255.255


组播


MASK将IP划分为网络ID和主机ID


E


多播保留地址

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


OSI


TCP/IP


功能


设备


应用层


应用层


人机交互接口


网络管理软件


表示层


接收来自应用层的动作,并处理成机器指令传递给会话层


会话层


为两个实体的表示层提供建立和使用连接的方法


传输层


传输层


会话层和网络层之间的传输


网络层


网络层


建立维持和终止网络连接


路由器


数据链路层


物理接口


建立和管理节点间的链路


交换机,网桥


物理层


为网络连接提供物理介质


网线,网卡,中继器

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

1)物理连接,通过RJ45网线或者光纤连接linux主机和互联接入端;

2)设置IP地址

3)设置子网掩码

4)设置网关

5)设置主DNS服务器,从DNS服务器,备用DNS服务器

6)重新加载网络服务

[[email protected] ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes #开机启动
BOOTPROTO=static #手动指定IP地址
IPADDR=192.168.1.77
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
[[email protected] ~]# service network restart
[[email protected] ~]# vi /etc/resolv.conf
nameserver 8.8.8.8 #添加DNS

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

1)使用命令ifconfig eth0 192.168.1.77  临时立即生效,重启系统后失效    
2)修改网卡配置 vim /etc/sysconfig/network-scripts/ifcfg-eth0 需要重启后生效    
3)使用图形界面 setup--网络配置  修改后重启服务

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

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

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

#!/bin/bash
#v0.1
#[email protected]
net=172.16.150.
let online=0
let notonline=0
for i in {1..254};do
if (ping $net$i &> /dev/dull);then 
let online+=1
echo -e “\e[1;32m $net$i \e[0m”
else
let notonline+=1
echo -e “\e[1;31m $net$i \e[0m”
fi
done
echo “online hosts  :$online”
echo  “not online hosts :$notonline”

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

CentOS6配置文件:/etc/sysconfig/network-scripts/ifcfg-eth0
    DEVICE="eth0"        <网卡号,和ifcfg-eth0对应就可以>
    HWADDR="08:00:27:1C:81:0A"  <网卡的MAC地址>
    ONBOOT="yes"         <在系统引导时是否激活此设备>
    BOOTPROTO=none        <手动设置IP选择none,自动获取选dhcp>
    USERCTL="yes"         <普通用户是否可控制此设备>
    IPADDR=192.168.1.100     <设定本网卡IP地址>
    NETMASK=255.255.255.0    <子网掩码>
    GATEWAY=192.168.1.1      <网关地址>
    DNS1=211.67.32.32       <首选DNS地址>
    DNS2=202.103.44.150      <次选DNS地址>

CentOS 7 配置文件

BOOTPROTO="dhcp"
DEFROUTE="yes"
PEERDNS="yes"
PEERROUTES="yes"
IPV4_FAILURE_FATAL="no"
UUID="7a4d0a76-affb-42ab-b47c-4b548237c5ff"
DEVICE="eno16777736"
ONBOOT="yes"

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

配置网络别名

ifconfig eth0:1 192.168.1.77

新建eth0:0配置文件

vim /etc/sysconfig/network-scripts/ifcfg-eth0:0

DEVICE=eth0:0

BOOTPROTO=static

IPADDR=192.168.1.77

NETMASK=255.255.255.0

ONBOOT=yes

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

ip [addr|route|link] 设置地址路由链接

ifconfig查看当前网络连接

[[email protected] ~]# ifconfig 
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.2.11.194  netmask 255.255.255.0  broadcast 10.2.11.255
        inet6 fe80::20c:29ff:fea6:a732  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:a6:a7:32  txqueuelen 1000  (Ethernet)
        RX packets 49848  bytes 50749094 (48.3 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 32761  bytes 3468601 (3.3 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
 
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 808  bytes 90300 (88.1 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 808  bytes 90300 (88.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

netstat 和ss 查看各种网络服务连接状态

[[email protected] ~]# netstat -tuan 
#-t<tcp>,-u<udp>,-a<all>,-n<numeric>,-l<listening>,... ...
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN     
tcp        0      0 10.2.11.194:22          10.2.11.26:52998        ESTABLISHED
tcp        0     52 10.2.11.194:22          10.2.11.26:52980        ESTABLISHED
tcp6       0      0 :::22                   :::*                    LISTEN     
tcp6       0      0 ::1:25                  :::*                    LISTEN     
udp        0      0 0.0.0.0:48559           0.0.0.0:*                          
udp        0      0 0.0.0.0:68              0.0.0.0:*                          
udp6       0      0 :::40698                :::*

route 路由相关信息

[[email protected] ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.2.11.1       0.0.0.0         UG    100    0        0 eno16777736
10.2.11.0       0.0.0.0         255.255.255.0   U     100    0        0 eno16777736

setup 图形管理界面

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

rpm 包管理(原Redhat Packages Manager,RPM Packages Manager)

rpm -qa 查看所有已安装的包

rpm -qf Package 查找包

安装:rpm -ivh Package(-i安装,-v显示正在处理的文件,-h显示进度)

升级:rpm -uvh Package;此包为升级程序的升级补丁

卸载:rpm -e Package

查找已安装中损坏的程序:rpm -Va;可以通过安装光盘中的包进行修复操作。(-V验证)

--force 强制执行

--requires 显示包的依赖关系

--nodeps 忽略依赖关系继续执行

yum 包管理(Yellow dog Updater Modified)

安装:yum install package_name

升级:yum update package_name

卸载:yum remove package_name

查看:yum repolist仓库

yum grouplist 包组

yum list 所有包

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

1)挂载光盘:mount /media/cdrom /tmp/contos6.8

2)编辑配置文件:vim /etc/yum.repo.d/*.repo

[CentOS-localrepo]

name = contos-localrepo

baseurl=file:///tmp/contos6.8/Packages

gpgcheck=0

enabled=1

3)更新yum并使配置生效

yum clean all

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

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

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

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

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

#!/bin/bash
#
let s=0
let k=0
for i in `ls /etc/rc.d/rc3.d/|sed -n  ‘s/^K/stop&/p‘`;do
    echo $i
    k+=1
done
for j in `ls /etc/rc.d/rc3.d/|sed -n  ‘s/^S/start&/p‘`;do
    echo $j
    s+=1
done
echo "S files:$s"
echo "K files:$k"
[[email protected] ~]# bash sknum.sh 
stopK50netconsole
startS10network
S files:01
K files:01

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

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

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

#!/bin/bash
#
let idnum=0
for i in $*;do 
    id -u $i &> /dev/null
    if [ $? -ne 0 ] ;then
echo "$i not exist"
    else 
let idnum+=`id -u $i`
    fi
done
echo "all user_id add:$idnum"
 
[[email protected] ~]# bash userid.sh lanin named mysql sshd ll
ll not exist
all user_id add:1126

14、写一个脚本

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

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

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

#!/bin/bash
#
let idnum=0
for i in $*;do 
    id -u $i &> /dev/null
    if [ $? -ne 0 ] ;then
echo "$i not exist"
    else 
let idnum+=`id -u $i`
    fi#!/bin/bash
#
let idnum=0
for i in $*;do 
    id -u $i &> /dev/null
    if [ $? -ne 0 ] ;then
echo "$i not exist"
    else 
let idnum+=`id -u $i`
    fi
done
echo "all user_id add:$idnum"
 
done
echo "all user_id add:$idnum"

15、写一个脚本

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

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

#!/bin/bash
#
if  [ $# -lt 1 ];then
    echo "Input a user name at least!"
fi
for i in $*;do 
    id -u $i &> /dev/null
    if [ $? -ne 0 ] ;then
echo "$i not exist"
    elif [ `id -u $i` -lt 500 ];then
echo "$i is system user"
    else 
echo "$i is common user"
    fi
done
[[email protected] ~]# bash  usercommon.sh  apache lanin root
apache is system user
lanin is common user
root is system user

16、写一个脚本

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

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

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

#!/bin/bash
#
user=user
declare -i num=0
for i in {1..10};do 
    if ( id -u $user$i &> /dev/null ) ;then
continue
    else 
echo "adding $user$i ..."
useradd $user$i
echo "$user$i" | passwd --stdin $user$i &> /dev/null
num+=1
echo "added $user$i finished."
    fi
done
echo "addusers number:$num"
[[email protected] ~]# bash useradd.sh 
adding user1 ...
added user1 finished.
adding user2 ...
added user2 finished.
adding user3 ...
added user3 finished.
adding user4 ...
added user4 finished.
adding user5 ...
added user5 finished.
adding user6 ...
added user6 finished.
adding user7 ...
added user7 finished.
adding user8 ...
added user8 finished.
adding user9 ...
added user9 finished.
adding user10 ...
added user10 finished.
addusers number:10

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

#!/bin/basj
#v0.1
net=172.16.250.
let online=0
echo "正在执行......"
for i in {20..100};do
    if ( ping -c 1 -w 1 $net$i &> /dev/dull );then
        let online+=1
        echo -e "\e[1;32m $net$i \e[0m"
    fi
done
echo "online hosts  :$online"

linux下禁ping方法:

~]#echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

这样就可以禁ping了。如果想恢复ping可以执行命令

~]#echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all

18、打印九九乘法表;

[[email protected] ~]# cat  jiujiu.sh
#!/bin/bash
#
for i in {1..9};do
    for j in $(seq 1 $i);do 
echo  -ne "$j*$i=$[$j*$i]\t"
    done
    echo
done
[[email protected] ~]# bash  jiujiu.sh
1*1=1
1*2=22*2=4
1*3=32*3=63*3=9
1*4=42*4=83*4=124*4=16
1*5=52*5=103*5=154*5=205*5=25
1*6=62*6=123*6=184*6=245*6=306*6=36
1*7=72*7=143*7=214*7=285*7=356*7=427*7=49
1*8=82*8=163*8=244*8=325*8=406*8=487*8=568*8=64
1*9=92*9=183*9=274*9=365*9=456*9=547*9=638*9=729*9=81
时间: 2024-07-30 13:34:37

【linux基础】第八周作业的相关文章

Linux学习第八周作业

1.请描述网桥.集线器.二层交换机.三层交换机.路由器的功能.使用场景与区别. 网桥 网桥有两个端口,一进一出,可以将两个相似的网络连接起来,从而放大信号的传输距离. 集线器 hub,局域网内对接收到的信号进行放大,但它可以有多个接口.不隔离广播域和冲突域. 二层交换机 数据链路层设备,可以识别数据包中的MAC地址,并根据MAC地址进行数据转发.隔离冲突域,但不隔离广播域. 三层交换机 数据链路层与网络层设备,三层交换机的最重要目的是加快大型局域网内部的数据交换,所具有的路由功能也是为这一目的服

Linux基础入门第二周作业【Linux微职位】

1.Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示. 1.目录管理类的命令: mkdir:创建目录 常用参数: -p: 自动按需创建父目录 -v: 显示详细过程 -m MODE:直接给定权限 [[email protected] ~]# mkdir -pv -m 600 /tmp/a/b mkdir: created directory '/tmp/a' mkdir: created directory '/tmp/a/b' [[email protected] ~]# 

【linux基础】第九周作业

1.详细描述一次加密通讯的过程,结合图示最佳. 加密通讯:A <--> B 1)A与 B通信,首先A.B双方都应该持有对方的公钥,即证书,并验证证书的合法性. 2)加密: i.     A将要发送的数据进行散列计算,并提取特征码(又叫指纹信息) ii.     A对明文数据的指纹信息使用自己的私钥加密,生成数字签名,并将数字签名附加到明文数据之后. iii.     A再使用一个一次性的对称加密算法对明文和数字签名进行加密,生成对应的密文. iv.     A再使用B的公钥对对称加密的密钥进行

2018-4-29 第八周作业

2018-4-29 第八周作业 网络攻防环境搭建 第八周作业: =网络攻防环境搭建 教材学习: 本次介绍了linux基本架构,Linux的远程攻防技术,Linux系统结构. 具体可以参考一下链接. =linux基本架构 =linux系统结构 kali视频课: SET工具的使用 嗅探欺骗,中间人攻击: 原文地址:https://www.cnblogs.com/nalanruntu/p/8970433.html

linux学习第八周总结

linux学习第八周总结 本周学习了两个服务,DNS和ansible 由于这些服务很复杂,我也只能是到达刚了解或者是刚刚入门的程度,所以只说一些简单基本的东西,简单总结. 一.DNS服务 1.简介 域名系统(英文:DomainNameSystem,缩写:DNS)是互联网的一项服务.它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网.DNS使用TCP和UDP端口53.当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符. 记录类型 主条目:域名服务

20135302魏静静——linux课程第八周实验及总结

linux课程第八周实验及总结 实验及学习总结 1. 进程切换在内核中的实现 linux中进程切换是很常见的一个操作,而这个操作是在内核中实现的. 实现的时机有以下三个时机: 中断处理过程(包括时钟中断.I/O中断.系统调用和异常)中,直接调用schedule(),或者返回用户态时根据need_resched标记调用schedule(): 内核线程可以直接调用schedule()进行进程切换,也可以在中断处理过程中进行调度,也就是说内核线程作为一类的特殊的进程可以主动调度,也可以被动调度: 用户

2017-2018-1 JAVA实验站 第八周作业

2017-2018-1 JAVA实验站 第八周作业 团队分工 UML 用例图 类图 活动图 状态图 工具选择 windows系统自带的画图软件 ProcessOn

软件项目与过程管理第八周作业

内容:软件项目与过程管理课程内容总结 经过八周时间的学习,软件项目与过程管理课程已经逐渐接近了尾声.通过这八周的学习,我对软件项目与过程管理课程有了更深的理解. 一.关于团队项目. 团队项目是本次软件项目与过程管理课程中最重要的一部分.我们团队项目是作业管理系统.在项目开发的整个过程中,我们在项目经理的带领下,项目团队的每一个成员团结合作.相互沟通,团队成员之间相互学习彼此的优点和技术,在每个成员的共同努力下,基本完成了此次软件开发项目. 通过这次团队项目, 我的总结如下: 1.在项目的开发过程

2017-2018-2 20179215《网络攻防实践》第八周作业

<网络攻防实践> 第八周 学习总结 一.第八章教材内容总结 Linux 操作系统简介 Linux 系统特点: 兼容UNIX :API 兼容,管理命令和各种工具: 源码开放 支持各种硬件平台,支持多CPU Linux 平台上存在大量的应用软件,以及应 用开发工具 多种不同发行版: RedHat(RHEL,Fedora, CentOS, -),Ubuntu,Debian, - 2.Linux 操作系统: 不是微内核系统,但具有某些微内核特征 Intel 版本:i386 的保护模式,特权级 内核态(

软件工程_东师站_第八周作业

一.PSP Date Type Job Start Interrupt(min) End Total(min) 20160417 助教 黄金点 20:00 5 21:00 55 20160418 助教 黄金点 19:00 12 21:00 108 20160419 助教 黄金点 18:45 100 23:00 155 20160420 助教 团队作业 10:00 35 11:20 45 20160425 结对编程 四则运算 19:00 5 19:30 25 ? 二.进度条 ? 代码行数 博客字数