计算机基础内容——网络基础

2023-11-17

网络基础

设备是如何上网的?

  • 网卡(有线、无线:内置天线):网线接口RJ45 usb转RJ45
  • 交换机
  • 路由器(外置天线,天线棒)
  • 光猫
  • 宽带运营商(不同的宽带运营商之间是互通的)

路由器发出的wifi信号:

  • 2.4GHz wifi
  • 5.0GHz wifi
  • 多频合一:终端链接wifi时,路由器会根据网络情况自动为终端选择最佳上网频段;
  • 如果手机只支持2.4GHz的信号,那么就只能接收到该信号;

一般的路由器:1个接外网,剩下的4个接内网;可以通过交换机扩展更多的内网接口;可以用交换机来扩展交换机(交换机的层数不宜过多);主力交换机通常被用于扩展;

光猫:

  • 路由器外网 一般连在 光猫的wlan接口;
  • 而光猫一般由宽带运行商,如联通提供的”联通设备箱“使用光纤接入;
  • 而”联通设备箱“与”联通机房“是通过光缆连接的;

以前没有光线入户的时候一般是通过电话线上网,代替光猫的是”猫“,即调制解调器;用以将电话的模拟信号转换为数字型号;”猫“的另一头就可以直接接网线,与之相连的可以是各种终端,电脑、路由器等;电话线的宽带是6M;现在都是千兆网(与之匹配使用千兆光猫);

现在的光猫,也具有路由器的功能;(注意光猫的内网口,有的是千兆口,有的是百兆口,甚至还有电话线的接口ITV,别连错了,少搞几个千兆口主要是为了省钱)

wifi:

  • wifi5 802.11ac:最高可达866Mbps 带宽2.4GHz和5.0GHz
  • wifi6 802.11ax:最高可达9.6Gbps 带宽2.4GHz和5.0GHz

OSI七层模型

网线(双绞线)标准:568b

  • 橙白 橙 绿白 蓝 蓝白 绿 棕白 棕:四根上传、四根下载
  • 两头顺序一致
  • 也有只支持四根线的网口,上限是百兆;千兆的话需要8根线;

通信介质:网线、光线、电磁波

信号在各种终端、各种媒介之间传播,且需保证目标传输正确,内容传输安全,就需要遵循一定的网络传输标准,目前较为通用的标准是OSI七层模型;按照这个模型实现的协议,就对应了各种通信协议;

协议:协商一致,共有协议、私有协议;

OSI七层模型

描述
物理层 信号转换的问题 数字信号 电信号 光线 电磁波
数据链路层 mac地址 唯一 物理地址 以太网
网络层 ip地址 公网ip唯一 定位
传输层 端口 tcp/udp
会话层 会话
表示层 文件的类型
应用层 http ftp smtp

mac地址:

  • 每一块网卡都有一个唯一的地址,及MAC地址,可以通过该地址查询到相应的厂商,厂商申请一个入网许可证的过程就是一个分配mac地址的过程;
  • 校验mac地址可以知道信号接收方是否正确,用于识别身份(前三个是厂商编号,后三个是设备编号);

ip地址:

  • 公网IP:全世界唯一,由IANA(互联网数字分配机构)分配
  • 内网IP:统一内网唯一;
  • ip地址用于定位信号接收方;

百度搜索ip即可查到当前公网ip;

单个数据包1500个字节,那么对于大的文件在网络传输过程中,就要进行拆包;接收方收到的包还需要进行合并;

tcp/udp:

  • tcp:可靠传输,对每一个数据包,都会进行确认;
  • udp:不可靠传输,速度快(兼顾实时性);

端口:

  • 区分主机上的服务,每个服务启动的时候都会监听一个端口;
  • http 80端口/ ssh 22端口;
  • tcp和udp协议都需要指定端口;

会话层:探测网络连通性

表示层:描述文件类型(只改了后缀,不一定能再打开文件)

应用层:具体的应用软件

后三层有时也会合并为1个;简化后的四层模型:网际层、网络层、传输层、应用层;

tcp/ip协议:

  • tcp/ipv4
  • tcp/ipv6

数据的封装与解封装

使用抓包工具wireshack,可以对当前指定的网卡(包括虚拟网卡)进行抓包;

过滤:ip.addr == 192.168.11.153

传输数据:

  • 应用层:数据
  • 传输层:拆包,tcp报头(源端口和目标端口) + 数据1
  • 网络层:ip包(源ip和目标ip) + tcp报头 + 数据1
  • 数据链路层:数据帧(源mac地址和目标mac地址) + ip包 + tcp报头 + 数据1
  • 物理层:将完整的数据包1,由二进制转换为电信号

接收数据:

  • 传输过程的逆过程;
  • 每个过程都会进行 相应地址信息的校验;
  • 传输层要进行已完成传输包的合并;

ip地址的划分

ipv4地址的范围:

  • 0.0.0.0 ~ 255.255.255.255

  • 32位二进制

  • 43亿个ip,不够用,因此有了nat(网络地址转换),路由器就有这个功能,用以完成内外网地址转换;

  • a类ip地址:1.0.0.1~126.255.255.254(最多,多用于公网ip)

  • b类:128.0.0.1~191.255.255.254

  • c类:192.0.0.1~233.255.255.254

  • d类:组播,VRRP协议

  • e类:科研240~255

内网ip地址网段:

  • 10.0.0.0~10.255.255.255(a类的内网ip)
  • 172.16.0.0~172.31.255.255(b类的内网ip)
  • 192.168.0.0~192.168.255.255(家用路由器使用的内网网段)(c类的内网ip)

ipv6:

  • 128位二进制
  • 0000::0000::0000::0000~ffff::ffff::ffff::ffff

子网掩码

举例:255.255.255.0 === 192.168.19.11/24(等价于斜杠的写法,24位网格位,8位主机位)

  • 子网掩码决定了一个网段的大小(确定网段的起始),即该网段有多少个ip地址可以用;
  • 网络位相同,即表示同一网段(确认网段范围);
  • 同一个网段的ip地址,才能直接相互通信;不同网段的ip地址,需要路由器才能相互通信;
  • ip的全0和全1主机位是被保留的,全0一般作为网络号使用,全1则作为广播地址;

路由器:

  • 路由器软件(iKuai) + 普通PC
  • 普通路由器
  • 企业级路由器

路由器至少两块网卡:

  • 初始化一个软路由所需的系统;然后配置网卡;
  • 一块对应外网:nat模式(用于共享主机的IP地址)
  • 一块内网:仅主机模式(与主机共享的专用网络)

其他模式:

  • 桥接模式:直接链接物理网络
  • 自定义特定虚拟网络

主机:

  • 一块网卡:仅主机模式

路由器内网地址lan1可设置:192.168.42.254/255.255.255.0(网段与路由器所在主机同设置);

然后在主机的网页打开192.168.42.254,进行路由器的配置;

  • 配置外网地址wan1

如果路由器的配置中没有配置dhcp(动态获取ip地址),那么对于通过链接路由器进行上网的主机来说,就需要手动配置IP;

  • 主机网卡适配器,使用ipv4;
  • IP:192.168.42.100,填充C段IP默认的24位子网掩码;
  • 网关:则指向路由器的内网地址192.168.42.254
  • DNS:223.5.5.5

dns解析

计算机和计算机之间通信,就是用ip地址和端口;

服务端的程序:ip+端口 一般是固定的;

domain name system 域名系统,解析:将域名解析成ip地址,常用unix命令:(使用yum安装命令包:yum install bind-utils

  • dig,解析命令,dig www.baidu.comdig @192.168.3.1 www.baidu.com这里指定内网进行解析实际用的并不是192.168.3.1,而是路由器的DNS服务;
  • nslookup,所使用的dns服务查询,nslookup www.baidu.comnslookup www.baidu.com 223.5.5.5
  • host,host www.baidu.comhost www.baidu.com 223.5.5.5
$ host www.baidu.com
www.baidu.com is an alias for www.a.shifen.com.
www.a.shifen.com has address 110.242.68.3
www.a.shifen.com has address 110.242.68.4

查看系统dns配置:cat /etc/resolv.conf => nameserver 192.168.3.1

dns服务器:查询指定域名对应的ip地址;

常用国内DNS服务器IP:

  • 223.5.5.5 223.6.6.6
  • 119.29.29.29
  • 180.76.76.76
  • 8.8.8.8(google)

223.5.5.5 本地有缓存即使用缓存,没有的话就向根dns服务器进行查询(一系列的查询过程);

dns记录的类型

  • A:ipv4,给定子域名名称test,以及对应的IP地址,就会被解析为test.xx.com;
  • CNAME:给定子域名,以及对应的别名子域名,就会被解析为相应的别名子域名;
  • MX:发邮件的时候,需要使用邮箱服务
  • NS:主域名授权给下级DNS服务器进行解析;
  • AAAA:ipv6;

arp协议:

  • 工作在 数据链路层和网络层之间的协议,用于把ip地址解析为mac地址;
  • arp广播,接收方(所有)ip校验后会进行响应;
  • arp欺骗:主机响应不是发给自己的广播内容,然后由自己再行发送;(arp防火墙,固定网关)
  • 局域网太大容易造成广播风暴;(通过路由器自带网口进行网段划分,广播只能在网段内传播,降低广播风暴)

tcp三次握手:

  • tcp数据包的六种标识:SYN(建立连接),FIN(断开连接),PSH(数据包),ACK(回应),RST(重传/置),URG(紧急指针);

  • seq:随机序列号

  • 握手过程 中间的两个包进行了合并,所以是三次握手;

企业级宽带对上传带宽的支持更好,民用宽带则下载带宽要高些;

四次挥手:

  • 服务端没有收到新包是seq就还是原来的;

文字编码

  • bit:比特,0 1
  • Byte:字节,8bit
  • 1000Mbps / 8 => 125MB

一个英文字母1个字节,不同编码方式所占字节数不同;

端口映射:

  • 实现外网访问内网的一个服务;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

计算机基础内容——网络基础 的相关文章

随机推荐

  • 码云实战(二)——新增仓库和删除仓库

    文章目录 前言 一 创建仓库 1 新增仓库 2 填写仓库的相关信息 3 创建效果 二 删除仓库 总结 前言 本系列文章主要记录日常使用中碰到的码云的相关问题 一 创建仓库 1 新增仓库 在gitee网站右上角的 点击 新建仓库 2 填写仓库
  • Python深度学习篇一《什么是深度学习》

    在过去的几年里 人工智能 AI 一直是媒体大肆炒作的热点话题 机器学习 深度学习 和人工智能都出现在不计其数的文章中 而这些文章通常都发表于非技术出版物 我们的未来被描绘成拥有智能聊天机器人 自动驾驶汽车和虚拟助手 这一未来有时被渲染成可怕
  • Linux怎么使用U盘

    方案一 Linux不像Windows一样 接上新硬件后可以自动识别 在Linux下无法自动识别新硬件的 需要手动去识别 USB移动存储设备通常被识别为sda1 具体可以通过fdisk l命令查询 在使用U盘前 我们先要为外挂点新建一个子目录
  • 《动手学深度学习 Pytorch版》 6.5 汇聚层

    import torch from torch import nn from d2l import torch as d2l 6 5 1 最大汇聚和平均汇聚 汇聚层和卷积层类似 区别在于汇聚层不带包含参数 汇聚操作是确定性的 通常计算汇聚窗
  • [Unity踩坑记录] 从屏幕坐标系转换到世界坐标系

    问题描述 调试需要 想从摄像机发出一条射向鼠标指向位置的射线 于是写了如下代码 void Update Vector3 mouseScreenPos Input mousePosition Vector3 mouseWorldPos Cam
  • JS力扣刷题26. 删除有序数组中的重复项

    var removeDuplicates function nums len表示nums修改后得长度 let len nums length for let i 0 i lt len 1 i if nums i nums i 1 for l
  • Android开发精典案例60个

    实例简介 Android开发精典案例60个 文件 url80 ctfile com f 25127180 740794786 4b13cf p 551685 访问密码 551685 核心代码 2 1 Activity生命周期 3 1 But
  • 区块链结合物联网可研究方向

    文献来源 H Dai Z Zheng and Y Zhang Blockchain for Internet of Things A Survey in IEEE Internet of Things Journal vol 6 no 5
  • js怎么实现数组里的数据相加_JS数组求和的常用方法总结【5种方法】

    本文实例总结了JS数组求和的常用方法 分享给大家供大家参考 具体如下 题目描述 计算给定数组 arr 中所有元素的总和 输入描述 数组中的元素均为 Number 类型 输入例子 sum 1 2 3 4 输出例子 10 方法1 不考虑算法复杂
  • Powershell如何查询目录所有文件和文件夹的名称

    Powershell如何查询目录所有文件和文件夹的名称 获取文件名称 修改时间等 Get ChildItem Name设置可仅获取文件名称 Get ChildItem Name 输入 Get ChildItem 如图 输入 Get Chil
  • hdu 1007 Quoit Design

    Quoit Design Time Limit 10000 5000 MS Java Others Memory Limit 65536 32768 K Java Others Total Submission s 10498 Accept
  • MFC 菜单操作

    1 菜单是窗口框架的组成部分 如果我们要导入自定义的菜单 可以通过以下语句实现 在CMainFrame OnCreate的函数中添加如下代码段 SetMenu NULL 将原本的菜单项去除 CMenu menu 新定义一个菜单对象 menu
  • 计算机网络 --- DNS协议

    计算机网络 DNS协议 什么是DNS DNS工作原理 Overview Three Classes of DNS servers 1 Root servers 2 top level domain DNS servers 3 authori
  • Java学习(java基础)-韩顺平老师

    一 简单介绍 1 jdk jre 2 Java代码规范 a 类 方法的注释 要以javadoc的方式来写 author 楠小弟 version 1 0 public class Hello public static void main S
  • JDBC中典型的五种查询方式

    第一种查询方式 返回一个ArrayList集合 集合里面的数据类型只能为Empinfo类类型 public ArrayList
  • YOLOV5代码general.py文件解读

    YOLOV5源码的下载 git clone https github com ultralytics yolov5 git YOLOV5代码general py文件解读 import glob import logging import o
  • 深入浅出BP神经网络算法的原理

    相信每位刚接触神经网络的时候都会先碰到BP算法的问题 如何形象快速地理解BP神经网络就是我们学习的高级乐趣了 画外音 乐趣 你在跟我谈乐趣 本篇博文就是要简单粗暴地帮助各位童鞋快速入门采取BP算法的神经网络 BP神经网络是怎样的一种定义 看
  • vue项目实战(一)

    第一步 找到你想要存放项目的文件夹 输入cmd 就会弹出小黑窗 然后输入vue create 项目名 创建项目 前提安装好node js和搭建 vue 环境 打开终端 创建项目 按上下键进行选择 做一些配置 这次选择自定义 也就是最后一个
  • Java_得到GET和POST请求URL和参数列表

    一 获取URL getRequestURL 二 获取参数列表 1 getQueryString 只适用于GET 比如客户端发送http localhost testServlet a b c d e f 通过request getQuery
  • 计算机基础内容——网络基础

    网络基础 设备是如何上网的 网卡 有线 无线 内置天线 网线接口RJ45 usb转RJ45 交换机 路由器 外置天线 天线棒 光猫 宽带运营商 不同的宽带运营商之间是互通的 路由器发出的wifi信号 2 4GHz wifi 5 0GHz w