linux基础第七周
< 返回列表时间: 2020-02-19来源:OSCHINA
【围观】麒麟芯片遭打压成绝版,华为亿元投入又砸向了哪里?>>>
1、简述OSI七层模型和TCP/IP五层模型

物理层
在OSI参考模型中,物理层(Physical Layer)是参考模型的最低层,也是OSI模型的第一层。
物理层的主要功能是:利用传输介质为数据链路层提供物理连接,实现比特流的透明传输。
数据链路层
数据链路层(Data Link Layer)是OSI模型的第二层,负责建立和管理节点间的链路。该层的主要功能是:通过各种控制协议,将有差错的物理信道变为无差错的、能可靠传输数据帧的数据链路。
网络层
网络层(Network Layer)是OSI模型的第三层,它是OSI参考模型中最复杂的一层,也是通信子网的最高一层。它在下两层的基础上向资源子网提供服务。其主要任务是:通过路由选择算法,为报文或分组通过通信子网选择最适当的路径。该层控制数据链路层与传输层之间的信息转发,建立、维持和终止网络的连接。具体地说,数据链路层的数据在这一层被转换为数据包,然后通过路径选择、分段组合、顺序、进/出路由等控制,将信息从一个网络设备传送到另一个网络设备。
传输层
OSI下3层的主要任务是数据通信,上3层的任务是数据处理。而传输层(Transport Layer)是OSI模型的第4层。因此该层是通信子网和资源子网的接口和桥梁,起到承上启下的作用。
该层的主要任务是:向用户提供可靠的端到端的差错和流量控制,保证报文的正确传输。传输层的作用是向高层屏蔽下层数据通信的细节,即向用户透明地传送报文。该层常见的协议:TCP/IP中的TCP协议、Novell网络中的SPX协议和微软的NetBIOS/NetBEUI协议。
会话层
会话层(Session layer)是OSI模型的第5层,是用户应用程序和网络之间的接口,主要任务是:向两个实体的表示层提供建立和使用连接的方法。将不同实体之间的表示层的连接称为会话。因此会话层的任务就是组织和协调两个会话进程之间的通信,并对数据交换进行管理。
表示层
表示层(Presentation Layer)是OSI模型的第六层,它对来自应用层的命令和数据进行解释,对各种语法赋予相应的含义,并按照一定的格式传送给会话层。其主要功能是“处理用户信息的表示问题,如编码、数据格式转换和加密解密”等。
应用层
应用层(Application Layer)是OSI参考模型的最高层,它是计算机用户,以及各种应用程序和网络之间的接口,其功能是直接向用户提供服务,完成用户希望在网络上完成的各种工作。它在其他6层工作的基础上,负责完成网络中应用程序与网络操作系统之间的联系,建立与结束使用者之间的联系,并完成网络用户提出的各种网络服务及应用所需的监督、管理和服务等各种协议。此外,该层还负责协调各个应用程序间的工作。
2、总结描述TCP三次握手四次挥手
当客户端希望同server端建立连接时,发送连接请求报文,SYN=1同时seq设定一个初始值,当server端收到请求连接报文会回复一个确认报文,SYN=1,ACK=1,ack为请求报文的seq值+1,同时设定server端seq初始值,当客户端收到确认报文后会回复针对server端报文的确认报文,ACK=1,ack为server端seq值+1,当server端收到该确认报文便建立连接

当客户端希望同server端断开连接时,发送断开连接请求报文,FIN=1,当server端收到请求连接报文会回复一个确认报文,ACK=1,ack为请求报文的seq值+1,然后server端发送断开连接请求报文,FIN=1,当客户端收到断开连接请求报文后会回复针对server端报文的确认报文,ACK=1,ack为server端seq值+1,当server端收到该确认报文便断开连接,客户端等待2MSL之后断开连接

3、描述TCP和UDP的区别
TCP UDP
基于连接 不建立连接
占用资源较多 占用资源较小
有确认机制保证了数据正确性 无法保证数据正确性
相对传输速度慢 可靠传输
响应快、传输速度高 不可靠传输

4、总结IP分类以及每个分类可以分配的IP数量
IP地址包括网络号和主机号
A类地址第一段为网络号,后三段为主机号
可以分配的IP数量=2^可变的网络ID数,即2^7=128,去除0网络为127个
每个网络中可以分配的IP数=2^主机ID数-2,即2^24-2=16777214个

B类地址前两段为网络号,后两段为主机号
可以分配的IP数量=2^可变的网络ID数,即2^14=16384个
每个网络中可以分配的IP数=2^主机ID数-2,即2^16-2=65534个

C类地址前三段为网络号,后一段为主机号
可以分配的IP数量=2^可变的网络ID数,即2^21=2097152个
每个网络中可以分配的IP数=2^主机ID数-2,即2^8-2=254个

D类地址为组播地址:224-239
E类地址为科研保留地址:240-255
5、总结IP配置方法
IP配置方法:命令和配置文件
1)命令 nmcli命令: nmcli [ OPTIONS ] OBJECT { COMMAND | help } device - show and manage network interfaces COMMAND := { status | show | connect | disconnect | delete | wifi | wimax } connection - start, stop, and manage network connections COMMAND := { show | up | down | add | edit | modify | delete | reload | load } modify [ id | uuid | path ] <ID> [+|-]<setting>.<property> <value> 如何修改IP地址等属性: # nmcli conn modify IFACE [+|-]setting.property value ipv4.address ipv4.gateway ipv4.dns1 ipv4.method ifconfig命令:接口及地址查看和管理 ifconfig [INTERFACE] # ifconfig -a:显示所有接口,包括inactive状态的接口; ifconfig interface [aftype] options | address ... # ifconfig IFACE IP/MASK [up|down] # ifconfig IFACE IP netmask NETMASK options: [-]promisc route命令:路由查看及管理 路由条目类型: 主机路由:目标地址为单个IP; 网络路由:目标地址为IP网络; 默认路由:目标为任意网络,0.0.0.0/0.0.0.0 查看: # route -n 添加: route add [-net|-host] target [netmask Nm] [gw GW] [[dev] If] 示例:route add -net 10.0.0.0/8 gw 192.168.10.1 dev eth1 route add -net 0.0.0.0/0.0.0.0 gw 192.168.10.1 route add default gw 192.168.10.1 删除: route del [-net|-host] target [gw Gw] [netmask Nm] [[dev] If] 示例: route del -net 10.0.0.0/8 gw 192.168.10.1 route del default netstat命令: Print network connections, routing tables, interface statistics, masquerade connections, and multicast memberships 显示路由表:netstat -rn -r:显示内核路由表 -n:数字格式 显示网络连接: netstat [--tcp|-t] [--udp|-u] [--udplite|-U] [--sctp|-S] [--raw|-w] [--listening|-l] [--all|-a] [--numeric|-n] [--extend|-e[--extend|-e]] [--program|-p] -t:TCP协议的相关连接,连接均有其状态;FSM(Finate State Machine); -u:UDP相关的连接 -w:raw socket相关的连接 -l:处于监听状态的连接 -a:所有状态 -n:以数字格式显示IP和Port; -e:扩展格式 -p:显示相关的进程及PID; 常用组合: -tan, -uan, -tnl, -unl, -tunlp 显示接口的统计数据: netstat {--interfaces|-I|-i} [iface] [--all|-a] [--extend|-e] [--verbose|-v] [--program|-p] [--numeric|-n] 所有接口: netstat -i 指定接口: netstat -I<IFace> ip命令: show / manipulate routing, devices, policy routing and tunnels ip [ OPTIONS ] OBJECT { COMMAND | help } OBJECT := { link | addr | route | netns } 注意: OBJECT可简写,各OBJECT的子命令也可简写; ip OBJECT: ip link: network device configuration ip link set - change device attributes dev NAME (default):指明要管理的设备,dev关键字可省略; up和down: multicast on或multicast off:启用或禁用多播功能; name NAME:重命名接口 mtu NUMBER:设置MTU的大小,默认为1500; netns PID:ns为namespace,用于将接口移动到指定的网络名称空间; ip link show - display device attributes ip link help - 显示简要使用帮助; ip netns: - manage network namespaces. ip netns list:列出所有的netns ip netns add NAME:创建指定的netns ip netns del NAME:删除指定的netns ip netns exec NAME COMMAND:在指定的netns中运行命令 ip address - protocol address management. ip address add - add new protocol address ip addr add IFADDR dev IFACE [label NAME]:为额外添加的地址指明接口别名; [broadcast ADDRESS]:广播地址;会根据IP和NETMASK自动计算得到; [scope SCOPE_VALUE]: global:全局可用; link:接口可用; host:仅本机可用; ip address delete - delete protocol address ip addr delete IFADDR dev IFACE ip address show - look at protocol addresses ip addr list [IFACE]:显示接口的地址; ip address flush - flush protocol addresses ip addr flush dev IFACE ip route - routing table management ip route add - add new route ip route change - change route ip route replace - change or add new one ip route add TYPE PREFIX via GW [dev IFACE] [src SOURCE_IP] 示例: # ip route add 192.168.0.0/24 via 10.0.0.1 dev eth1 src 10.0.20.100 # ip route add default via GW ip route delete - delete route ip route del TYPE PRIFIX 示例: # ip route delete 192.168.1.0/24 ip route show - list routes TYPE PRIFIX ip route flush - flush routing tables TYPE PRIFIX ip route get - get a single route ip route get TYPE PRIFIX 示例:ip route get 192.168.0.0/24 ss命令: ss [options] [ FILTER ] 选项: -t:TCP协议的相关连接 -u:UDP相关的连接 -w:raw socket相关的连接 -l:监听状态的连接 -a:所有状态的连接 -n:数字格式 -p:相关的程序及其PID -e:扩展格式信息 -m:内存用量 -o:计时器信息
2)配置文件 IP/NETMASK/GW/DNS等属性的配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE IFACE:接口名称; 路由的相关配置文件:/etc/sysconfig/networkj-scripts/route-IFACE ifcfg-IFACE配置文件参数: DEVICE:此配置文件对应的设备的名称; ONBOOT:在系统引导过程中,是否激活此接口; UUID:此设备的惟一标识; IPV6INIT:是否初始化IPv6; BOOTPROTO:激活此接口时使用什么协议来配置接口属性,常用的有dhcp、bootp、static、none; TYPE:接口类型,常见的有Ethernet, Bridge; DNS1:第一DNS服务器指向; DNS2:备用DNS服务器指向; DOMAIN:DNS搜索域; IPADDR: IP地址; NETMASK:子网掩码;CentOS 7支持使用PREFIX以长度方式指明子网掩码; GATEWAY:默认网关; USERCTL:是否允许普通用户控制此设备; PEERDNS:如果BOOTPROTO的值为“dhcp”,是否允许dhcp server分配的dns服务器指向覆盖本地手动指定的DNS服务器指向;默认为允许; HWADDR:设备的MAC地址; NM_CONTROLLED:是否使用NetworkManager服务来控制接口; 用到非默认网关路由:/etc/sysconfig/network-scripts/route-IFACE 支持两种配置方式,但不可混用; (1) 每行一个路由条目: TARGET via GW (2) 每三行一个路由条目: ADDRESS#=TARGET NETMASK#=MASK GATEWAY#=NEXTHOP
热门排行