Linux学习 --- 网络基础知识
1.1 IP地址
IP地址由两部分组成 网络号和主机号 。网络号为IP地址的高位组成,而主机号是IP地址的低位组成,两个的大小取决于网络的类型。
IP地址根据网络的地址不同分为:A类,B类,C类,D类,E类。
(1)A类IP地址类型
A类IP地址由一个字节的网络号和三个字节的主机号组成。网络地址的最高位必须为“0”,地址范围为:1.0.0.0 到 126.0.0.0。
(2)B类IP地址类型
B类IP地址由两个字节的网络号和两个字节的主机号组成。网络地址的最高位必须为“10”,地址范围为:128.0.0.0 到 191.255.255.255。
(3)C类IP地址类型
C类IP地址由三个字节的网络号和一个字节的主机号组成。网络地址的最高位必须为“110”,地址范围为:192.0.0.0 到 223.255.255.255。
(4)D类地址用于组播
D类IP地址第一个字节以“1110”开始,它是一个专门保留的地址。它并不指向特定的网络,这一类地址被用于组播中,组播地址用来一次寻址一组计算机,它标识共享同一协议的一组计算机。
(5)E类IP地址类型
以“1110”开始,为将来使用保留。
1.2 子网掩码
子网掩码又叫做网络掩码,一般构成方法是网络地址部分全部为“1”,主机地址全为“0”,例如C类IP地址:192.168.1.134 已知C类网络用三个字节表示网络号,一个字节表示主机号。所以其子网掩码为:255.255.255.0(默认子网掩码)。
子网掩码的作用:就是判别主机发送的数据包是向外网发送还是向内网发送。例如主机A向主机B发送数据包,主机先将自己的子网掩码和目标目标主机IP地址做&(与)操作。由于子网掩码的网络地址部分全部是“1”,主机地址全部为“0”,这样与操作结果就是网络地址。
例如:IP地址为192.168.1.115,主机的子网掩码是255.255.255.0,拿IP地址跟子网掩码相与(&)操作得到结果:192.168.1.0。即为IP地址所在的网络地址。
A主机得到网络地址后,就拿得到的IP地址和B所在的网络地址对比,如果两个网络地址相同,即B主机和A主机在同一网络里面,数据包向内网发送。如果不是,则向外网发送,即需要发送到网关。
1.3 网关
网关又称为网间连接器,协议转换器。网关主要用于传输层上以实现网络连接,是最复杂的网络互联设备,仅用于两个高层协议不同的网络互连。网关既可以用于广域网互联,还可以用于局域网互联。网关是一种充当转换重任的计算机系统或设备。在使用不同的通信协议,数据格式或者语言,甚至体系结构完全不同的两种系统之间,网关是一个翻译器。
那么网关到底是什么呢?? 网关实质上是一个网络通向其他网络的IP地址。比如有网络A和网络B,网络A的IP地址范围为:192.168.1.1~192.168.2.1 ,子网掩码为:255.255.255.0;网络B的IP地址范围:192.168.2.1~192.168.2.254。子网掩码为:255.255.255.0。在没有路由器的情况下,两个网络之间是不能进行TCP/IP通信的。即使两个网络连接在同一台交换机(或集线器)上,TCP/IP协议也会根据子网掩码(255.255.255.0)判断是否两个网络的主机在不同的网络下。而要实现两个网络之间相互通信,则必须要通过网关,如果网络A中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给自己的网关。再由网关转发给网络B的网关,网络B的网关再转发给网络B的某个主机。
所以说,只有设置好网关的IP地址,TCP/IP协议才能实现不同网络之间的互相通信。那么这个IP地址是哪台机器的IP地址呢??网关的IP地址是具有路由功能的设备IP地址,具有路由功能的设备有路由器,启用了路由协议而服务器(实质上相当于一台路由器),代理服务器(也相当于一台路由器)。
1.4 DNS服务器
DNS服务器是计算机域名系统的缩写,它是由解析器和域名服务器组成的,域名服务器是指保存有该网络中所有主机的域名和对应的IP地址,并且可将域名转换为IP地址功能的服务器。其中,域名必须对应一个IP地址,而IP地址不一定有域名。域名系统采用类似目录树的等级结构。域名服务器为客户机/服务器模式中的服务器方,它主要有两种形式:主服务器和转发服务器。将域名映射为IP地址的过程称为“域名解析”。
例如,我们经常输入的“www.baidu.com”,这里的“www.baidu.com”就是域名。如果想自己的计算机能成功进入百度首页,那么必须设置好DNS服务器,主机在和百度服务器进行连接前,必须通过域名服务器的解析,得到百度服务的实际的IP地址。
Linux学习 --- 网络基础知识的更多相关文章
- Linux系统网络基础知识及配置
一:DNS(domain name system)简介 DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而 ...
- Linux运维笔记(一)网络基础知识
网络基础知识 一.基本概念 1.ARPANET & TCP/IP:以“软件”技术将网络硬件整合,使得不同的计算机或者数据可以通过这个软件达成数据沟通(TCP/IP技术也被称为Internet) ...
- Ant学习-001-ant 基础知识及windows环境配置
一.Ant 概要基础知识 Apache Ant 是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发,用以构建应用,或结合其他开源测试工具例如 git.T ...
- 网络基础知识、ASP.NET 核心知识(1)*
为什么要写网络? 我原本的计划是这样的,连续两天梳理ASP.NET开发的核心知识.说到这呢,有人问了.“不是说好了做ASP.NET笔记吗?为啥要写网络基础知识?是不是傻?” 原因是这样的.作为网站开发 ...
- Linux学习-计算机基础
Linux 学习-计算机基础 一.描述计算机的组成及其功能. 计算机系统是由硬件(Hardware)和软件(Software )两部分组成. 硬件: 从硬件基本结构上来讲,计算机是由运算器.控制器.存 ...
- 1)Linux程序设计入门--基础知识
)Linux程序设计入门--基础知识 Linux下C语言编程基础知识 前言: 这篇文章介绍在LINUX下进行C语言编程所需要的基础知识.在这篇文章当中,我们将 会学到以下内容: 源程序编译 Makef ...
- 关于图计算&图学习的基础知识概览:前置知识点学习(Paddle Graph Learning (PGL))
关于图计算&图学习的基础知识概览:前置知识点学习(Paddle Graph Learning (PGL)) 欢迎fork本项目原始链接:关于图计算&图学习的基础知识概览:前置知识点学习 ...
- iOS网络基础知识
iOS网络基础知识 1.一次HTTP请求的完整过程 (1)浏览器或应用发起Http请求,请求包含Http请求Http(请求),地址(url),协议(Http1.1)请求为头部 (2)web服务器接收到 ...
- jQuery学习笔记 - 基础知识扫盲入门篇
jQuery学习笔记 - 基础知识扫盲入门篇 2013-06-16 18:42 by 全新时代, 11 阅读, 0 评论, 收藏, 编辑 1.为什么要使用jQuery? 提供了强大的功能函数解决浏览器 ...
- 学习javascript基础知识系列第二节 - this用法
通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...
随机推荐
- composer 安装 laravel指定版本
composer 安装 laravel指定版本 $ composer create-project --prefer-dist laravel/laravel notelog '7.*'
- 远程控制 todesk
最近发现的一个好用的远程连接软件 便是近些年推出来的 todesk 虽然qq的远程 和 向日葵的 远程连接也都可以达到我要实现的效果 但是体验起来的话 我个人还是觉得 todesk更好用一些 下载地址 ...
- VisionPro学习笔记(1)——软件介绍和基本使用
前言 自己使用visionPro已经有段时间了,最近也一直在研究其算子的理论,为了加深印象,计划将自己的学习笔记整理在博客园,当然其官方文档对如何使用及其各种算子都有详细的介绍,所以这里的笔记仅仅为个 ...
- 2022.2.1最新版本的IDEA
一.下载破解工具.激活码 激活工具下载链接:https://note.youdao.com/s/1ANz2F3o 6G5NXCPJZB-eyJsaWNlbnNlSWQiOiI2RzVO ...
- Visual Studio 集成了.NET 升级助手插件
.NET团队2023年2月16日在官方博客上发布了名为".NET Upgrade Assistant"的全新 Visual Studio 扩展,帮助开发人员升级.NET 应用程序. ...
- Spring框架-AOP核心
Spring AOP AOP (Aspect Oriented Programming) 面向切面编程 OOP(Object Oriented Programming)面向对象编程,用对象的思想来完善 ...
- 安卓逆向 ARM基础篇 二
1.寄存器寻址的八中方法 1.立即寻址 二 寄存器寻址 三 寄存器移位寻址 过程 R2 移位 传给R0 四 寄存器间接寻址 五 基址寻址 六 多寄存器寻址 七 堆栈寻址 七 堆栈寻址
- 为什么不建议使用 @Autowired 注解进行注入
在Spring中,Bean的注入一般有三种方式:属性注入.set方法注入.构造器注入. 1.Autowired注入的原理 @Autowired属于属性注入,默认按照类型装配,默认情况下要求依赖的对象必 ...
- Qt-FFmpeg开发-视频播放【软解码】(1)
Qt-FFmpeg开发-视频播放[软解码] 目录 Qt-FFmpeg开发-视频播放[软解码] 1.概述 2.实现效果 3.FFmpeg软解码流程 4.主要代码 6.完整源代码 更多精彩内容 个人内容分 ...
- JavaScript 中的一些奇怪问题
JavaScript 中的一些奇怪问题 JavaScript 在开发过程中可能会出现很多奇怪的问题,以下是一些示例: 1.变量提升问题: 变量提升是 JavaScript 中一个常见的问题,特别是当没 ...