职业经验 Arthur Yue 的招聘经验

Dubhe2020 · 2021年09月18日 · 95 次阅读

如题~

群友要的,发出来了~~~

祝大家找到好工作

面试大纲

标准模版:

  • 请自我介绍

  • 在前一家公司的离职原因是什?

  • 找工作时,最重要的考虑因素为何?

  • 应聘这个岗位,有什么优势

  • 解决最复杂的一个问题是什么

  • 遇到过什么突发情况嘛,你怎么做的

  • 谈你的缺点 | 领导是什么管理风格--->你喜欢这种管理风格嘛--->他怎么评价你

  • 平时喜欢干什么,兴趣爱好

  • 是否租房? 是否常驻上海?老家在那里?春节是否回家?

公司介绍: 神隐

基础运维

想让一个服务器通信都需要什么

  • install 系统

  • 配置网卡

IPADDR=192.168.0.78 PREFIX=24 GATEWAY=192.168.0.1 DNS1=192.168.0.1

1.centos 安装

Install CentOS 7 #第一个安装CentOS 7

Test this media & install CentOS  7 #第二个测试安装文件并安装CentOS  7

Troubleshooting 修复故障    #第三个

2.centos 配置网卡的目录

cd  /etc/sysconfig/network-scripts/

3.ssh 开启

#开启sshd服务 
systemctl start sshd
systemctl restart sshd
systemctl status sshd
systemctl enable sshd
#检查端口
netstat -an | grep 22

4.shell

#打印时间
echo `date`

#LNMP是什么
L指Linux,N指Nginx,M一般指MySQL,也可以指MariaDB,P一般指PHP,也可以指Perl或Python。

#取出Linux中eth0的IP地址
 ifconfig eth0|grep 'inet addr'|cut -d ":" -f2|cut -d " " -f1
 ifconfig eth0|grep 'inet addr'|awk -F ":" '{print $2}'|awk '{print $1}'
 ifconfig eth0|grep 'inet addr'
 ifconfig eth0|grep 'inet addr'|sed 's/^.*addr://g'
 ifconfig eth0|grep 'inet addr'|sed 's/^.*addr://g'|sed 's/Bcast:.*$//g'

#查看http的并发请求数和连接状态
netstat-n|awk'/^tcp/ {++b[$NF]} END {for(a in b) print a, b[a]}'
或netstat -ant | awk '{print $NF}' | grep -v '[a-z]'| sort | uniq -c

#查看8080端口最大访问量的信息
netstat -nao |grep :8080 |wc -l

#Linux开机到登录界面的启动过程
1.开机BIOS自检

2.MBR引导

3.grub引导菜单

4.加载内核kernel

5.启动init进程

6.读取inittab文件,执行rc.sysinit,rc等脚本

7.启动mingetty,进入系统登陆界面

#配置一个 cront 计划任务:

用户 natasha 必须配置一个 cron job, 当地时间每天 14:23 运行 /bin/echo hiya
systemctl status crond.service
crontab -u natasha -e
23 14 * * * /bin/echo hiya

[root@server0 /]# crontab -u natasha -l
23  14   *   *   *  /bin/echo hiya   

5.RAID 区别

RAID0

优缺点:

读写性能是所有RAID级别中最高的。

RAID 0的缺点是不提供数据冗余,因此一旦用户数据损坏,损坏的数据将无法得到恢复。RAID0运行时只要其中任一块硬盘出现问题就会导致整个数据的故障。一般不建议企业用户单独使用。

总结:

磁盘空间使用率:100%,故成本最低。

读性能:N*单块磁盘的读性能

写性能:N*单块磁盘的写性能

冗余:无,任何一块磁盘损坏都将导致数据不可用

RAID1

优缺点:

RAID1通过硬盘数据镜像实现数据的冗余,保护数据安全,在两块盘上产生互为备份的数据,当原始数据繁忙时,可直接从镜像备份中读取数据,因此RAID1可以提供读取性能。
RAID1是硬盘中单位成本最高的,但提供了很高的数据安全性和可用性,当一个硬盘失效时,系统可以自动切换到镜像硬盘上读/写,并且不需要重组失效的数据。

总结:

磁盘空间使用率:50%,故成本最高。

读性能:只能在一个磁盘上读取,取决于磁盘中较快的那块盘

写性能:两块磁盘都要写入,虽然是并行写入,但因为要比对,故性能单块磁盘慢。

冗余:只要系统中任何一对镜像盘中有一块磁盘可以使用,甚至可以在一半数量的硬盘出现问题时系统都可以正常运行。

RAID5

总结:

磁盘空间利用率:(N-1)/N,即只浪费一块磁盘用于奇偶校验。

读性能:(n-1)*单块磁盘的读性能,接近RAID0的读性能。

写性能:比单块磁盘的写性能要差(这点不是很明白,不是可以并行写入么?)

冗余:只允许一块磁盘损坏。

RAID10

总结:

磁盘空间利用率:50%。

读性能:N/2*单块硬盘的读性能

写性能:N/2*单块硬盘的写性能

冗余:只要一对镜像盘中有一块磁盘可以使用就没问题

6.SAS 和 STAT 区别

SAS接口可向下兼容SATA,在物理层和协议层实现兼容,实现SAS控制器直接操控SATA硬盘,但SAS不可使用与SATA的环境中。 SAS接口理论传输速度为12Gb/s,SATA理论传输速度为6Gb/s,SAS接口支持热插拔。

SAS接口可向下兼容SATA,在物理层和协议层实现兼容,实现SAS控制器直接操控SATA硬盘,但SAS不可使用与SATA的环境中。 SAS接口理论传输速度为12Gb/s,SATA理论传输速度为6Gb/s,SAS接口支持热插拔。

网络工程师

Switch>enable  --进入特权模式

Switch#configure terminal  --进入全局配置模式

Switch(config)#hostname S1  --修改交换机主机名为S1(方便识别)

S1(config)#enable password 111  --设置明文管理密码为111

S1(config)#enable secret 222  --设置加密密码为222(设置了加密密码后,明文将不会起作用)

S1(config)#line vty 0 5  -- 设置虚拟终端个数(一般为5个,最多为16个)

S1(config-line)#password 333  --设置远程登录密码为333

S1(config-line)#login  --配置远程登录密码后必须要有login,如果没有的话则远程登录密码无效

S1(config-line)#exit  --返回上一级(全局配置模式)

S1(config)#interface vlan 1  --进入vlan 1 端口

S1(config-if)#ip address 192.168.1.1 255.255.255.0  --给vlan1配置ip地址,使PC1与S1可以Ping互通

S1(config-if)#no shutdown  --激活vlan 1 端口

S1(config-if)#end  --返回特权模式

S1#copy running-config startup-config  --将配置保存(从内存RAM保存到硬盘NVRAM) 

S1#show running-config   --查看交换机配置

MPLS 中是如何区分路由的?

追问:(1)RD 与 RT 的区别?(2)在 MPLS HUB SPOKE 模型中是如何规划 RT 的值的?

CE 双归属问题,CE 和 PE 之间运行 OSPF ,会出现哪些问题?怎么解决?

追问:
(1)CE和PE之间运行BGP会有什么问题?如何解决?
(2)对端CE传递过来的LSA为几类LSA(Domain ID相同和不同)?
(3)CE和PE之间运行OSPF时使用D/N位防环是对几类LSA的防环?
(4)两个PE分别连两个CE,CE和CE之间运行OSPF,CE和PE之间运行BGP,如何选路?会产生什么问题?

IPV6 的链路本地地址的作用、产生方法以及与 IPV4 相比用链路本地地址有什么优势?

追问:
ipv4互联地址用30位的掩码,而ipv6链路本地地址只有两个,没有网络号和广播地址,问为什么不需要网络号和广播地址?

ipv6 到 ipv4 的过渡技术有哪些?

面试题:

  1. 保留给自环测试的 IP 地址是( )。

A. 164.0.0.0 B. 130.0.0.0 C. 200.0.0.0 D. 127.0.0.0

解析:这道题很容易得出正确答案,但只能凭记忆。

答案:D。

没有任何子网划分的 IP 地址 125.3.54.56 的网络地址是( )。

A. 125.0.0.0 B. 125.3.0.0 C. 125.3.54.0 D. 125.3.54.32

解析:

因为题中已说明是没有任何子网划分,所以,只要区分 A、B、C 这 3 个主要 IP 地址类型就差不多了。因为网络地址就是网络 ID 不变,主机 ID 全为 0 的 IP 地址。

125.3.54.56 是一个 A 类地址。A 类地址中前一个八位组是网络 ID,后面 3 个八位组是主机 ID。于是把 125.3.54.56 的后面 3 个 8 位组全部置 0 就得到了它的网络地址,即 125.0.0.0。

答案:A。

测试一下你对IP地址的理解能力,大家先不看题后的解答,看自己能做出多少题。

面试题1:以下说法正确的是(   )。
A. C类地址就是局域网用的IP地址
B. A类地址的网络ID为128个
C. 网络ID不能以数字0或127开头
D. 不能使用全0或全1主机ID
解析:
这道题考的是IP地址的划分和组成原则。
A选项说C类地址是局域网用的IP地址,肯定是错误的,因为在C类地址中只有192.168.0.0/16这个地址段才专门用于局域网,其他的仍是用于因特网的IP地址。
B选项说A地址的网络ID为128个也是错误的。因为尽管A类地址的网络ID仅为第一个8位组,并且由于第一位是固定为0的,所以剩下的7位中,理论上最多是128(27)。但是第一个8位全为0(00000000)的不能当做IP地址分配,因为它是网络地址;另一个第一个8位组中后面7位全为1(01111111)的也不能当做IP地址分配,因为它保留以专门用于环路测试。所以实际上可用的仅126个。
C选项说网络ID不能以数字0或127开头,这正好是单播IP地址编址规则,所以是正确的。
D选项说不能使用全0或全1主机ID,这也是单播IP地址编址规则,所以也是正确的。
答案:C D。

面试题2:以下属于专用地址是(   )。
A. 10.0.0.1                  B. 172.31.254.1            C. 192.168.0.16
D. 172.33.25.220        E. 196.168.0.1
解析:
这道题考的是应试者对三类IP地址中专用于局域网的IP地址段的了解,这也是在面试中经常会考到的。
要确定某个IP地址是不是专用地址,就要看它是否属于A、B、C三类地址中专用局域网的IP地址段中。
A类地址10.0.0.0/8(10.0.0.0,255.0.0.0)地址段属于专用IP地址,这是地址前缀表示形式,另一表示形式就是10.0.0.1~10.255.255.254。
B类地址172.16.0.0/12(172.16.0.0,255.240.0.0)地址段属于专用IP地址,这是地址前缀表示形式,另一表示形式就是172.16.0.1~172.31.255.254。
C类地址192.168.0.0/16(192.168.0.0,255.255.0.0)地址段属于专用IP地址,这是地址前缀表示形式,另一表示形式就是192.168.0.1~192.168.255.254。
对照以上各选项中的IP地址,看是否在以上三个专用IP地址网段范围中即可迅速得出本题的正确答案。
答案:A B C。

面试题3:保留给自环测试的IP地址是(   )。
A. 164.0.0.0        B. 130.0.0.0        C. 200.0.0.0        D. 127.0.0.0
解析:这道题很容易得出正确答案,但只能凭记忆。
答案:D。

面试题4:将11100100.10011101.10010011.111110011转换成点分十进制,将235.168.20.12地址转换成点分二进制形式。
解析:
这其实是一道二进制与十进制相互转换的题,掌握了方法很容易得出正确答案。
二进制转换成十进制的方法是对各位按对应位的2的幂次方(最低位的幂为0)取值,然后把每个8位组的2的幂次方值相加即可。如本题中的11100100.10011101.10010011.111110011就可表示为:
1×27+1×26+1×25+0×24+0×23+1×22+0×21+0×20. 1×27+0×26+0×25+1×24 +1×23+1×22+0×21+1×20. 1×27+0×26+0×25+1×24+0×23+0×22+1×21+1×20. 1×27+1×26+1×25+1×24+0×23+0×22+1×21+1×20
最终得到:(128+64+32+0+0+4+0+0).(128+0+0+16+8+4+0+1).(128+0+0+16+0+0+2+1).(128+64+32+16+0+0+2+1)=228.157.147.243。
要将十进制转换成二进制,则把对应的十进制组除以2,然后把余数从后面开始排列即得到二进制。如果余数不满8位,在前面加上0填充即可。如,本题235.168.20.12中的“235”除以2的余数分别如图11-1所示,然后把余数从下往上取值,即得到11101011,恰好为8位,就不用在前面填充0了。用同样的方法可以得到后面三组的二进制分别为10101000、00010100及00001100。以点分二进制表示为11101011 .10101000.00010100.00001100。

图11-1  235的二进制转换
答案:
11100100.10011101.10010011.111110011的点分十进制表示形式为224.157.147.243,235.168.20.12的点分二进制形式为11101011. 10101000.00010100.00001100。

面试题5:用压缩零法表示1080:0000:0000:0000:0008: 0800:200C:123A和0514:0000:0000:A001:0000:0000:0612:421F两个IPv6地址。
解析:
这是道考IPv6地址表示方式的题,不过目前在网管员的面试中,这方面的题还是很少的,毕竟现在IPv6还没有普及应用。
在表示和书写IPv6的地址时,用冒号将128位分割成8个16位的段,这里的128位表示在一个IPv6地址中包括128个二进制数。转换成十六进制数后,每个段包括4位的16进制数字。在IPv6地址中规则可以用用重叠冒号置换地址中的连续16位(相当于一个段都为0)的0,以减少其中的0的位数,书写和阅读都更方便。这就是本题所说的压缩零表示法。
如本题中的1080:0000:0000:0000:0008:0800:200C:123A地址中,用压缩零表示后即得到1080::0008:0800:200c:123A。
而0514:0000:0000:A001:0000:0000:0612:421F却不能用压缩零表示后得到0514::A001::0612:421F,而应该是0514::A001:0000:0000:0612:421F,或者0514:0000:0000:A001::0612:421F。因为压缩0表示法在一个地址中只能用一次。
答案:
1080:0000:0000:0000:0008:0800:200C:123A和0514:0000:0000:A001: 0000:0000:0612:421F两个IPv6地址用压缩零表示法的表示形式分别为:1080::0008:0800:200c:123A和0514::A001:0000:0000:0612:421F,或者0514:0000:0000:A001::0612:421F。

面试题6:172.16.49.31/16的网络ID和主机ID分别是(   )。
A. 172,16.49.31              B. 172.16,49.31
C. 172.16.49,31              D. 172.16.49.31,172.16.49.31
解析:
这道题考的是IPv4地址的地址前缀表示方法,以及对网络ID和主机ID的理解。要表示一个IP地址,可以有两种方式:一是地址+子网掩码形式,另一种就是地址前缀形式,否则就无法确认该IP地址属于哪个网络,更无法知道它的网络ID和主机ID了。
其实这是一道非常简单的题,根本不用计算,直接可以得出答案,只要理解地址前缀“/16”的意思即可。因为要求网络ID和主机ID只能是标准的三类IP地址,划分子网后的地址中,因为网络ID和主机ID都有不完整的8位组,所以不可能用十进制来表示。千万别把简单的问题复杂化,认为没这么简单。可事实上这道题就这么简单。
地址前缀值其实表示的就是地址中网络ID的位数。本题中的“/16”表示该IP地址的网络ID有16位,而这个IP地址的第一个8位组值为172,正好处于B类IP地址范围,所以其实172.16.49.31/16就是一个标准的B类地址。因此,很容易得出它的网络ID为前两个8位组172.16,而主机ID为后两个8位组49.31,也就是本题的正确答案为B。
答案:B。

面试题7:没有任何子网划分的IP地址125.3.54.56的网络地址是(   )。
A. 125.0.0.0        B. 125.3.0.0                C. 125.3.54.0    D. 125.3.54.32
解析:
因为题中已说明是没有任何子网划分,所以,只要区分A、B、C这3个主要IP地址类型就差不多了。因为网络地址就是网络ID不变,主机ID全为0的IP地址。
125.3.54.56是一个A类地址。A类地址中前一个八位组是网络ID,后面3个八位组是主机ID。于是把125.3.54.56的后面3个8位组全部置0就得到了它的网络地址,即125.0.0.0。
答案:A。

面试题8:假定给出一个IP地址:192.168.12.43,子网掩码为:255.255.255.128, 那么网络地址和广播地址分别是(   )。
A. 192.168.12.32   192.168.12.127
B. 192.168.0.0      255.255.255.255
C. 192.168.12.43   255.255.255.128
D. 192.169.12.0    192.168.12.127
解析:
这道题涉及到了子网的划分,因为子网掩码为255.255.255.128,而不是3个标准IP地址类型默认的子网掩码。
根据子网掩码255.255.255.128可以得出它是向主机ID借1位形成的新子网,因为子网掩码是网络ID全置1,主机ID全置0的值,而这里的最后一个8位组为128,恰好是最高的第8位的2的幂次方值(27)。
网络地址是IP地址与子网掩码的二进制逻辑与运算结果。192.168.12.43的二进制为:11000000.10101000.00001100.00101011;255.255.255.128的二进制为11111111.11111111.11111111.10000000。结果得到网络地址为192.168.12.0。
广播地址是网络地址+最大的主机ID。但要注意的是,主机ID只有最后的7位,由此可以得到广播地址为192.168.12.127。
答案:D。

面试题9:172.16.10.32/24代表的是(   )。
A. 网络地址        B. 主机地址        C. 组播地址    D. 广播地址
解析:
这是考应试者对IP地址前缀表示法的理解。
这里的“/24”表示该IP地址中前24位是网络ID部分。而按照标准的IP地址分类可以知道,172.16.10.32是一个B类地址。B类地址中网络ID是前16位,所以这是一个经过重新子网划分的IP地址,而且恰好是整八位数形式的划分(最后的32仅为主机ID)。它可以明确表示一个主机IP地址,所以正确答案是题中的B。
之所以题中A、C、D 3个选项均不正确,那是因为172.16.10.32/24地址所在子网的网络地址是172.16.10.0,广播地址是172.16.10.255。组插地址是有专门地址的,是在224.0.0.0~239.255.255.255范围中。
答案:B。

面试题10:计算IP地址为15.16.193.6,子网掩码为255.255.248.0的子网网络地址和广播地址各是多少。
解析:
这道题虽然与前面的题一样都求是网络地址和广播地址的,但是这道题的难度要大许多,因为它不是整个8位组借位的,这一点可以从其子网掩码255.255.248.0得出的。
根据IP地址15.16.193.6,子网掩码255.255.248.0可以得出,该子网是通过在第3个8位组中借5位形成的子网。因为子网掩码中的第3个8位组248的二进制为11111000。
网络地址是IP地址与子网掩码的二进制位对应取值的结果。于是先把IP地址和子网掩码分别转换成二进制,然后再进行逻辑与运算。算式如下:
00001111.00010000.11000001.00000110
.AND  11111111. 11111111. 11111000.00000000
       0000111. 00010000.11000000.00000000
由此可以得出网络地址的结果为0000111. 00010000.11000000. 00000000,转换成点分十进制后即得到15.16.192.0。
广播地址是由网络地址再加上最大的主机ID得到的。这里的主机ID涉及到第3个和第4个共两个8位组。直接可以在网络地址的二进制中来转换,把网络地址二进制中主机ID部分全部取1,即可到广播地址。因为网络地址为0000111. 00010000.11000000.00000000,把第3个8位组后面3位和第4个8位组全部取1,其他的不变,即得到广播地址为0000111. 00010000.11000111.11111111,转换成点分十进制后即得到15.16.199.255。这就是该子网的广播地址。
其实广播地址也可以通过它与网络地址的另一层关系得到,就是上一个子网的广播地址是与下一个子网的网络地址的前一个地址。我们已经得到该子网的网络地址为15.16.192.0,同时知道它的子网掩码为255.255.248.0,由此可见,网络地址中最后一个非全0的8位组为248,它与最大值256相差8,因此它的下一个子网的网络地址中,该8位组的值应为8的倍数(本子网的这个八位组的值为192,也是8的倍数)。而本IP地址为15.16.193.6,所以下一个子网的网络地址中第3个8位数的数肯定要大于193,同时又要是8的倍数,可以得到最接近的一个数就是200,这样就得到了下一个子网的网络地址为15.16.200.0,它的前一个IP地址就是15.16.199.255,这就是15.16.200.0所在子网的上一个子网的广播地址。
只要懂得原理,还是非常简单的,因为可以根据子网掩码直接得出下一个子网网络地址是多少的倍数,那就是最后一个非全0的8位组的十进制值与一个8位组中最大值256的差值。如本例为248,它与256的差就是8。
答案:
IP地址为15.16.193.6,子网掩码为255.255.248.0的子网网络地址和广播地址分别为15.16.192.0,15.16.199.255。

面试题11:将172.28.13.0/20前缀地址转换为点分十进制形式,并计算其中包括的可用IP地址范围和个数。
解析:
这道题考的是应试者对IP地址前缀表示形式的理解。
这里所说的点分十进制表示形式其实就是要用IP地址+子网掩码的十进制表示形式。
172.28.13.0/20表示前20位为网络ID,后12位为主机ID。由此可以得到该地址表示的网络子网掩码为11111111.11111111.11110000. 00000000,转换成十进制后即得到255.255.240.0。
这样就可以得到172.28.13.0/20的点分十进制表示形式为172.28.13.0,255.255.240.0。
然后根据以上结果,按照本节以上介绍的方法得出该子网的网络地址和广播地址分别为:172.28.0.0,172.28.15.255。
最后根据网络地址与广播地址得到地址范围和个数。
可用于主机的IP地址范围是172.28.0.1~172.28.15.254,总个数是16(倒数第2个8位组是从0~15的)×254(倒数第1个8位组的所有可用主机IP地址数)=4064。这就是可用的IP地址数。

答案:
该子网可用的IP地址范围是172.28.0.1~172.28.15.254,可用的IP地址个数为4 064个。

面试题12:192.168.2.16/28子网中每个子网最多可以容纳(   )台主机。
A. 16         B. 8             C. 15            D. 14            E. 7
解析:
要计算出可以容纳多少台主机,就需要知道子网的子网掩码。因为主机数可以从子网掩码的主机ID位数是得出。
192.168.2.16/28是一个向第4个8位组借了4位而划分的子网(因为3个8位组一共是24位)。由此可以得到该子网的子网掩码二进制为:
11111111.11111111.11111111.11110000
转换成点分十进制后即得到255.255.255.240,这就是该子网的子网掩码。
由上面的点分二进制子网掩码可以得知子网中的主机ID位仅有4位了。最多的IP数就是24=16。然而这是包括了子网的网络地址和广播地址这两个的,最后实际上可用于主机的IP地址仅为14个,即答案D。
答案:D。

面试题13:每个子网不能有多于58台计算机,最合适的子网掩码为(   )。
A. 255.255.255.192                B. 255.255.255.248
C. 255.255.255.224      D. 255.255.255.240
解析:
这道题考的也是子网划分方面的知识。首先要抓住题中要点,就是每个子网有不多于58台计算机。主机数是由主机ID位数决定的,计算公式是主机数m=2n(n为主机ID位数)。
25=32,26=64,在不多于58台主机的情况下,则最接近的就是主机位数为6位。也就是把一个C类IP地址中的最后8位中的前2位划分为子网ID。这样可以得出该子网的子网掩码地址为11111111.11111111.11111111. 11000000,转换成十进制后即得到255.255.255.192。

答案:A。


面试题 2

#“我看你项目上有好多企业实施项目,或者你一个人在项目中参与了很多的内容。那你能不能说说你们的项目是什么结构的?”

#“那你说一下underlay做了哪些东西?”
“这个啊,我首先简单解释了underlay是为overlay上层服务,这部分其实就是硬件集成部分的内容,在路由交换里面有堆叠irf,VLAN,静态路由,MSTP,ospf,vrrp,snmp(为了怕被认为low,赶紧自我强调了下,还使用了MPLS VPN划分VRF,主要是为了SDN部分进行服务),还有远程管理方便使用的telnet,使用了ACL,防火墙上面划分区域,还做了一些策略。”这个时候显然我对网络的认知仅仅局限在都配置了什么命令上面,并没有考虑为什么这样子做。


#“不是,你在项目部署的时候为什么采用了那些配置,出于什么目的考虑?”
对方不愧是老司机,并不给我蒙混过关的机会,无奈我只得CPU超载,表示并没有想过这个问题,出师未捷就挨了当头一棒。(项目中自认为属于打酱油的角色)

#“那你再说说生成树吧,说说原理。”

因为开始紧张的缘故,原本记得朦朦胧胧的知识,一下子变得雪白,囫囵吞枣地讲它有什么,有根桥,非根桥,根端口,指定端口这一类的选举。(开始浆糊,该死的忘记怎么选举了,早知道复习下了)


接下来是关于OSPF哲学三连“是什么?为什么?怎么用?”

我把肚子里仅有的关于OSPF的一滴墨水挤成了三滴,仍然没有给出他想要的。继续追问ospf的包类型,区域类型,LSA是的作用是什么。

啊~,我听说过,想当初IE自学完了,当时都懂,现在只能唱一首凉凉。


#防火墙策略怎么做的,为什么这样做,我隐约记得是基于IP来做的来着,完后又追问到NAT穿越怎么解决的,要是没有防火墙,只有一台出口三层设备,NAT和VPN怎么同时实现的。



系统工程师

1. 如何优化 Linux 系统,简述几项

#永久关闭selinux
[root@localhost ~]# vim /etc/selinux/config  
#将SELINUX=enforcing改为SELINUX=disabled,保存后退出,重启生效


#加大系统文件描述符最大值
vim /etc/security/limits.conf
* soft nofile 65536
* hard nofile 65536
* soft nproc 65536
* hard nproc 65536
#说明:* 代表针对所有用户
#noproc 是代表最大进程数
#nofile 是代表最大文件打开数


#调整内核参数文件 /etc/syctl.conf 配置网络参数来提高系统负载能力;如果出现服务器丢包的情况,需要考虑是不是如下配置需要调整
vim /etc/syctl.conf
net.ipv4.tcp_syncookies = 1
#表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭;
net.ipv4.tcp_tw_reuse = 1
#表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭;
net.ipv4.tcp_tw_recycle = 1
#表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭。
net.ipv4.tcp_fin_timeout = 30
#表示如果套接字由本端要求关闭,这个参数决定了它保持在FIN-WAIT-2状态的时间。
net.ipv4.tcp_keepalive_time = 1200
#表示当keepalive起用的时候,TCP发送keepalive消息的频度。缺省是2小时,改为20分钟。
net.ipv4.ip_local_port_range = 1024 65000
#表示用于向外连接的端口范围。缺省情况下很小:32768到61000,改为1024到65000。
net.ipv4.tcp_max_syn_backlog = 8192
#表示SYN队列的长度,默认为1024,加大队列长度为8192,可以容纳更多等待连接的网络连接数。
net.nf_conntrack_max = 655360
#在内核内存中netfilter可以同时处理的“任务”(连接跟踪条目)

2.TCP/UDP 差别

UDP

​ 首先 UDP 是不需要和 TCP 一样在发送数据前进行三次握手建立连接的,想发数据就可以开始发送了。并且也只是数据报文的搬运工,不会对数据报文进行任何拆分和拼接操作。

  1. #### 面向无连接

首先 UDP 是不需要和 TCP 一样在发送数据前进行三次握手建立连接的,想发数据就可以开始发送了。并且也只是数据报文的搬运工,不会对数据报文进行任何拆分和拼接操作。

具体来说就是:

  • 在发送端,应用层将数据传递给传输层的 UDP 协议,UDP 只会给数据增加一个 UDP 头标识下是 UDP 协议,然后就传递给网络层了
  • 在接收端,网络层将数据传递给传输层,UDP 只去除 IP 报文头就传递给应用层,不会任何拼接操作
  1. #### 有单播,多播,广播的功能

UDP 不止支持一对一的传输方式,同样支持一对多,多对多,多对一的方式,也就是说 UDP 提供了单播,多播,广播的功能。

  1. #### UDP 是面向报文的

发送方的 UDP 对应用程序交下来的报文,在添加首部后就向下交付 IP 层。UDP 对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界。因此,应用程序必须选择合适大小的报文

  1. #### 不可靠性

首先不可靠性体现在无连接上,通信都不需要建立连接,想发就发,这样的情况肯定不可靠。

并且收到什么数据就传递什么数据,并且也不会备份数据,发送数据也不会关心对方是否已经正确接收到数据了。

再者网络环境时好时坏,但是 UDP 因为没有拥塞控制,一直会以恒定的速度发送数据。即使网络条件不好,也不会对发送速率进行调整。这样实现的弊端就是在网络条件不好的情况下可能会导致丢包,但是优点也很明显,在某些实时性要求高的场景(比如电话会议)就需要使用 UDP 而不是 TCP。

TCP

  • 面向连接

面向连接,是指发送数据之前必须在两端建立连接。建立连接的方法是 “三次握手”,这样能建立可靠的连接。建立连接,是为数据的可靠传输打下了基础。

  • 仅支持单播传输

每条 TCP 传输连接只能有两个端点,只能进行点对点的数据传输,不支持多播和广播传输方式。

  • 面向字节流

TCP 不像 UDP 一样那样一个个报文独立地传输,而是在不保留报文边界的情况下以字节流方式进行传输。

  • 可靠传输

对于可靠传输,判断丢包,误码靠的是 TCP 的段编号以及确认号。TCP 为了保证报文传输的可靠,就给每个包一个序号,同时序号也保证了传送到接收端实体的包的按序接收。然后接收端实体对已成功收到的字节发回一个相应的确认 (ACK);如果发送端实体在合理的往返时延 (RTT) 内未收到确认,那么对应的数据(假设丢失了)将会被重传。

  • 提供拥塞控制

当网络出现拥塞的时候,TCP 能够减小向网络注入数据的速率和数量,缓解拥塞

  • TCP 提供全双工通信

TCP 允许通信双方的应用程序在任何时候都能发送数据,因为 TCP 连接的两端都设有缓存,用来临时存放双向通信的数据。当然,TCP 可以立即发送一个数据段,也可以缓存一段时间以便一次发送更多的数据段(最大的数据段大小取决于 MSS)

UDP TCP
是否连接 无连接 面向连接
是否可靠 不可靠传输,不使用流量控制和拥塞控制 可靠传输,使用流量控制和拥塞控制
连接对象个数 支持一对一,一对多,多对一和多对多交互通信 只能是一对一通信
传输方式 面向报文 面向字节流
首部开销 首部开销小,仅 8 字节 首部最小 20 字节,最大 60 字节
适用场景 适用于实时应用(IP 电话、视频会议、直播等) 适用于要求可靠传输的应用,例如文件传输

总结

  • TCP 向上层提供面向连接的可靠服务 ,UDP 向上层提供无连接不可靠服务。
  • 虽然 UDP 并没有 TCP 传输来的准确,但是也能在很多实时性要求高的地方有所作为
  • 对数据准确性要求高,速度可以相对较慢的,可以选用 TCP

3.如何在 Linux 生成随机密码

1. 使用openssl生成随机密码

具体用法如下:

openssl rand -base64 20

几乎所有Linux发行版都包含openssl。我们可以利用它的随机功能来生成可以用作密码的随机字母字符串,其中后面的数字10和20是指定密码的长度。

2. 使用urandom生成随机密码

具体用法如下:

strings /dev/urandom |tr -dc A-Za-z0-9 | head -c20; echo

3. 使用dd生成随机密码

具体用法如下:

dd if=/dev/urandom bs=1 count=15|base64 -w 0

使用dd生成随机密码,我们需要将结果通过base64编码使它能被人类可读。

4. 使用md5sum生成随机密码

具体用法如下:

date |md5sum
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册