Linux 学习 (九) 网络基础
Linux网络管理 学习笔记
ISO/OSI 七层模型
ISO :国际标准化组织
OSI :开放系统互联模型

应用层、表示层、会话层服务于用户
传输层、网络层、数据链路层、物理层服务于实际数据传输
帧包含计算机的 MAC 地址,报文包含计算机的 IP 地址。MAC 地址负责局域网通信,IP 地址负责外网通信。
- TPDU:传输协议数据单元
- SPDU:会话协议数据单元
- PPDU:表示层协议数据单元
- APDU:应用协议数据单元
| 层 | 作用 |
|---|---|
| 应用层 | 用户接口 |
| 表现层 | 数据的表现形式、特定功能的实现(如加密) |
| 会话层 | 对应用会话的管理、同步 |
| 传输层 | 可靠与不可靠的传输(TCP/UDP)、传输前的错误检测、流控 |
| 网络层 | 提供逻辑地址、选路 |
| 数据链路层 | 成帧、用 MAC 地址访问媒介、错误检测与修正 |
| 物理层 | 设备之间的比特流的传输、物理接口、电气特性等 |
TCP/IP 四层模型

| 层 | 作用 |
|---|---|
| 网络接口层 | 负责监视数据在主机和网络之间的交换。事实上,TCP/IP 本身并未定义该层的协议,而由参与互联的各网络使用自己的物理层和数据链路层协议,然后与TCP/IP 的网络接入层进行连接。地址解析协议(ARP)工作在此层,即 OSI 参考模型的数据链路层 |
| 网际互连层 | 主要解决主机到主机的通信问题。它所包含的协议设计数据包在整个网络上的逻辑传输。该层有三个主要协议:网际协议(IP)、互联网组管理协议(IGMP)和互联网控制报文协议(ICMP) |
| 传输层 | 为应用层实体提供端到端的通信功能,保证了数据包的顺序传送及数据的完整性。该层定义了两个主要协议:传输控制协议(TCP)和用户数据报协议(UDP) [TCP 是面向连接、可靠的;UDP 面向事务、不可靠] |
| 应用层 | 为用户提供所需要的各种服务,例如 FTP, Telnet, DNS, SMTP 等 |

TCP/IP 模型与 OSI 模型的比较:
- 共同点:
- 都采用了层次结构的概念
- 都能够提供面向连接和无连接两种通信服务机制
- 不同点:
- 前者是七层模型,后者是四层结构
- 对可靠性要求不同(后者更高)
- OSI 模型是在协议开发前设计的,具有通用性;TCP/IP 是先有协议集然后建立模型,不适合用于非 TCP/IP 网络
- 实际市场应用不同(OSI 模型只是理论上的模型,并没有成熟的产品,而 TCP/IP 已经成为“实际上的国际标准”)
IP 地址

IP 地址分类:
| 网络类别 | 最大网络数 | IP 地址范围 | 最大主机数 | 私有 IP 地址范围 |
|---|---|---|---|---|
| A | 126(2^7-2) | 1.0.0.0 - 126.255.255.255 | 2^24-2 | 10.0.0.0 - 10.255.255.255 |
| B | 16384(2^14) | 128.0.0.0 - 191.255.255.255 | 2^16-2 | 172.16.0.0 - 172.31.255.255 |
| C | 2097152(2^21) | 192.0.0.0 - 223.255.255.255 | 2^8-2 | 192.168.0.0 - 192.168.255.255 |
A 类第一位数代表网段,B 类前两位数代表网段,C 类前三位数代表网段
子网掩码
IP 和子网掩码不能单独使用,必须同时使用
- - - - - - A 类: B 类 C 类 IP 地址 10. 1.1.200 172.16. 1.200 192.168.1. 200 子网掩码 255. 0.0.0 255.255. 0.0 255.255.255. 0 网络地址 10. 0.0.0 172.16. 0.0 192.168.1. 0
子网掩码用来确定 IP 地址当中哪一位数字代表同一网段,哪一位数代表同一网段中的不同主机
端口


常见端口号:
- FTP(文件传输协议):20、21
- SSH(安全shell协议):22
- telnet(远程登陆协议):23
- DNS(域名系统):53
- http(超文本传输协议):80
- SMTP(简单邮件传输协议):25
- POP3(邮局协议3代):110
netstat -an :查看本机启用的端口
- -a :查看所有连接和监听端口
- -n :显示 IP 地址和端口号,而不是显示域名和服务名
DNS
hosts 是做静态 IP 和域名对应,hosts 文件的优先级高于 DNS 解析
- 早期 Hosts 文件解析域名:
- 名称解析效能下降
- 主机维护困难
- DNS 服务
- 层次性
- 分布式
DNS 查询类型:
- 从查询方式上分:
- 递归查询:要么做出查询成功响应,要么做出查询失败的响应。一般客户机和服务器之间属递归查询,即当客户机向 DNS 服务器发出请求后,若 DNS 服务器本身不能解析,则会向另外的 DNS 服务器发出查询请求,得到结果后转交给客户机
- 迭代查询:服务器收到一次迭代查询回复一次结果,这个结果不一定是目标 IP 与域名的映射关系,也可以是其他 DNS 服务器的地址
- 从查询内容上分:
- 正向查询:由域名查找 IP 地址
- 反向查询:由 IP 地址查找域名
网关
- 网关(Gateway)又称网间连接器、协议转换器
- 网关在网络层以上实现网络互联,是最复杂的网络互联设备,仅用于两个高层协议不同的网络互联
- 网关既可以用于广域网互联,也可以用于局域网互联
- 网关是一种充当转换重任的服务器或路由器
Linux 学习 (九) 网络基础的更多相关文章
- Linux 系统的网络基础_【all】
网络基础 1.网线:568B: 白橙 橙色 白绿 蓝色 白蓝 绿色 白棕 棕色 2.交换机:电信号转发的网络设备,它可以为接入交换机的任2个网络节点设备提供电信号通信 3.路由器:连接局域网,广域网的 ...
- linux/linux学习笔记-Shell基础(mooc)
一.shell概述 shell根据ascII表,将命令翻译为0101...传给内核执行. 内核->shell翻译为命令->用户(操作的界面就是shell,shell=翻译官) linux标 ...
- Linux 学习 (十) 网络配置
Linux网络管理 学习笔记 配置 IP 地址 ifconfig 命令临时配置 IP 地址 ifconfig eth0 192.168.0.200 netmask 255.255.255.0 #临时设 ...
- Linux学习之01_基础命令介绍
初学Linux,还在摸索中,在这个过程中希望能记录下学习到的东西,参考的的书籍为<鸟哥的Linux私房菜> 在这里学到的主要命令有这几个: data cal bc man shutdown ...
- Linux学习笔记之——基础命令学习
1.find 按照名字查找:find / -name file_name 2.zip压缩 1) 我想把一个文件repartition.txt和一个目录invader压缩成为amateur.zip: ...
- linux学习:网络(防火墙)及系统安全相关命令学习
指令: top.htop.free.pstree.lsof.ifconfig.w3m.tcpdump.netstat.nmap.ufw 网络: top #查看内存,cpu,进程之间的状态.hto ...
- boost asio 学习(八) 网络基础 二进制写发送和接收
http://www.gamedev.net/blog/950/entry-2249317-a-guide-to-getting- started-with-boostasio?pg=9 8. Net ...
- boost asio 学习(七) 网络基础 连接器和接收器(TCP示例)
http://www.gamedev.net/blog/950/entry-2249317-a-guide-to-getting- started-with-boostasio?pg=8 7. Net ...
- 【Linux学习九】负载均衡
环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 一.高并发 随着应用访问量的增加,带来高并发处理问题. 具体有两个: ...
随机推荐
- Javascript继承3:将优点为我所有----组合式继承
//声明父类 function ParentClass(name){ //值类型公有属性 this.name = name //引用类型公有属性 this.books = ['Html'] } //父 ...
- nodejs 搭建简易服务器
www文件夹下 template文件夹下 server.js代码: const express=require('express'); const static=require('express-st ...
- JavaScript是如何工作的: Web推送通知的机制
摘要: 如何在Web端推送消息? 这是专门探索 JavaScript 及其所构建的组件的系列文章的第9篇. 如果你错过了前面的章节,可以在这里找到它们: JavaScript是如何工作的:引擎,运行时 ...
- iOS----------viewcontroller中的dealloc方法不调用
ios的viewcontroller生命周期是 init -> loadView -> viewDidLoad -> viewWillAppear -> viewDidAppe ...
- android中的相对路径
转载请标明出处:https://www.cnblogs.com/tangZH/p/9939655.html 1.同个文件夹访问 D:\Java\main\A.java D:\Java\main\B. ...
- 第五周课后作业——热门软件创新分析+附加题1&附加题3
鉴于我们寝室都热衷于手游,所以本次热门软件创新分析我就来分析一下几款热门的抽卡型手游. 阴阳师(后文简称YYS)——剧情画风唯美,配音引人入胜 作为网易公司研发的一款3D日式和风回合制游戏,YYS ...
- 关于sqlserver字符类型查询条件区分大小写
在写sql的查询时 如下: select * from Users where username='WangE' select * from Users where username='wange' ...
- Mysql 获取表设计查询语句
SELECT COLUMN_NAME 列名, COLUMN_TYPE 数据类型, DATA_TYPE 字段类型, CHARACTER_MAXIMUM_LENGTH 长度, IS_NULLABLE 是否 ...
- phpstorm设置编码格式
phpstorm设置编码格式 默认: utf-8格式 设置方法: file -> settings -> Editor -> file encodng -> project e ...
- LeetCode算法题-Set Mismatch(Java实现)
这是悦乐书的第279次更新,第295篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第147题(顺位题号是645).集合S最初包含从1到n的数字. 但不幸的是,由于数据错误 ...