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 一.高并发 随着应用访问量的增加,带来高并发处理问题. 具体有两个: ...
随机推荐
- SQL中# 与$ 的区别
区别: (1)#将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号.如:order by #user_id#,如果传入的值是id,则解析成的sql为order by "id&quo ...
- java开发环境配置——JDK
虽然网上有很多类似的文章了,第一次搭的时候也是看的网上的文章,但为了做个记录,自己也写一下,记录一下. 首先是先安装JDK,JDK下载可以直接去官网下载,地址:http://www.oracle.co ...
- 利用MingW检验程序运行内存
今天zhx老师在讲课的时候提到了一种检验程序内存的方法 一般计算内存的方法就是手算,手动计算代码中每个变量所占的内存然后加起来 具体可以参考这篇文章 zhx老师讲的方法可以实现全自动化计算内存 具体怎 ...
- 大湾区联动:广州深圳助力东莞.NET俱乐部首次线下活动
新年伊始,经过一个寒冬考验后的.NET社区热情不减,长沙.南京.合肥.东莞先后建立以微信为主要平台的线上.NET社区.并相继开始筹划和组织各地区的首次线下活动.东莞作为粤港澳大湾区的腹地,制造业基地, ...
- springmvc实现视频上传+进度条
前台表单: <form id="uploadform" method="post" enctype="multipart/form-data&q ...
- Github:failed to add file / to index
我把Test项目上传到github上,为了截一部分图,来写博客.所以我就上传成功之后,把仓库Respository Test删除了,但是当我再次上传的时候,发现上传不上,会提示failed to ad ...
- Java 图片爬虫,java打包jar文件
目录 1. Java 图片爬虫,制作 .jar 文件 spider.java 制作 jar 文件 添加执行权限 1. Java 图片爬虫,制作 .jar 文件 spider.java spider.j ...
- Network Policy - 每天5分钟玩转 Docker 容器技术(171)
Network Policy 是 Kubernetes 的一种资源.Network Policy 通过 Label 选择 Pod,并指定其他 Pod 或外界如何与这些 Pod 通信. 默认情况下,所有 ...
- 26个ASP.NET常用性能优化方法
数据库访问性能优化 数据库的连接和关闭 访问数据库资源需要创建连接.打开连接和关闭连接几个操作.这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资源. ASP.NET中提供了连接池(Co ...
- 定时任务 Cron表达式
Cron表达式由6~7项组成,中间用空格分开.从左到右依次是: 秒.分.时.日.月.周几.年(可省略) Cron表达式的值可以是数字,也可以是以下符号: "*":所有值都匹配 &q ...