网络基础一

文章目录

IP

IP的作用和组成

(1)IP的作用:

  • Ip 地址在网络中用于标识一个节点(或者网络设备的接口)
  • IP地址用于IP报文在网络中的寻址

(2)IP的组成:

IP地址类似于现实中的地址,可以标识网络中的一个节点,数据就是通过它来找到目的地。

现实中的地址:省份+市区+县区+...

也可以类比学号:2507200220(学院+专业+班级+号)

网络中的IP地址:192.168.1.1**(网络位+主机位)**


(3)网络位

而全世界这么多电脑,也需要分班,也就是要划分网段

网络位:判断这个地址属于哪个网络(通过网络位,就可以知道自己所在的网段)

比如:192.168.1 .1 192.168.1.10 这两个地址就是在相同的网段

而 172.16.100.2 和上面两个IP没在同一个网段

(4)可用地址和不可用地址

192.168.130.0 ~ 192.168.130.255,总共256个地址,这些地址分为可用地址和不可用地址两种。

其中不可用地址有2个,分别是 192.168.130.0/24 这个是网络地址,用来标识一个网络。 192.168.130.255/24 这是广播地址,用来向该网络中的所有主机发送数据的特殊地址。

可用地址有254个。

(5)公网IP&私网IP

公网IP地址:IP地址是有IANA统一分配的,从而保证任何一个IP地址在Internet的唯一性。

私网IP地址:实际上一些网络设备不需要连接到Internet中,比如封闭实验室的网络,只要同一网络中的网络设备IP地址不冲突即可。在IP地址空间中,A、B、C三类地址中各预留了一些地址专门用于这种情况。

A类:10.0.0.0 ~ 10.255.255.255

B类:172.16.0.0 ~ 172.31.255.255

C类:192.168.0.0 ~ 192.168.255.255

(5)特殊IP地址

  1. 有限广播地址:255.255.255.255,作为目的地址,发往该网段所有主机(受限与网关)
  2. 任意地址:0.0.0.0,"任何网络"的网络地址,"这个网络上这个主机接口"的IP地址
  3. 环回地址:127.0.0.0/8,测试设备自身的软件洗头
  4. 本地链路地址:169.254.0.0/24,当主机自动获取地址失败后,可使用该网段中的某个地址进行临时通信

(6)IPV4&IPV6

IPv4:32bit,地址分类:单播地址、广播地址、组播地址

IPv6:128bit,地址分类:单播地址、广播地址、任播地址

子网掩码

由什么决定网络位的长度:子网掩码

子网掩码决定网络位的长度

在确定IP地址时,也需要确定子网掩码,比如IP是 192.168.1.1 ,子网掩码是 255.255.255.0,那么代表IP的前三段是网络位(192.168.1 是网络位)。同样如果子网掩码是 255.255.0.0,那么代表IP的前两段是网络位

实际工作中的子网掩码可能会是下面这样,就是不会是特别整齐

IP:192.168.1.3 子网掩码:255.255.255.192

这种情况,子网掩码共26个1,所以前26位是网络位。

11000000.10101000.00000001.00****000011(红色是网络位)

所以主机位的范围是 11000000.10101000.00000001.00000000 ------ 11000000.10101000.00000001.00111111

主机范围就是从全0到全1,转化为10进制就是,主机范围 192.168.1.0 ~ 192.168.1.63

主机位:标识本IP子网内的某台主机

而实际子网掩码可能是这样表示的,192.168.1.1/24,这种就是表示子网掩码有24个1,ip前24是网络号

判断另一个ip和当前ip是否是同网段,可以看网络位是否相同。

网络通信的原理,同网段是直接对目标主机发起arp请求,不同网段是对网关发起arp请求。

路由器配IP

路由器配IP

plain 复制代码
1. 系统视图(敲完这条命令才能,对系统进行配置)
system-view

2. 配置ip地址(进入这个接口)
interface GigabitEthernet 0/0/0
可以输入缩写 int g0/0/0

3. 输入要配置的ip 和 子网掩码
ip address 192.168.1.1 255.255.255.0
可以输入缩写 ip add 192.168.1.1 255.255.255.0
plain 复制代码
1. system-view

2. int g0/0/0

3. ip add 192.168.1.2 255.255.255.0

4. quit(退出)

IP配置好后,还需要测试一下,两台路由器是否可以进行通信

plain 复制代码
1. 左边的路由器给右边的路由器发送测试数据包
ping 192.168.1.2

退出:quit

保存:save

DHCP(动态主机配置协议)

在实际的使用中不用这么麻烦,只要接入网线,就会自动获取IP地址,这是因为有DHCP技术

(1)先给路由配置IP:192.168.1.1(路由器是专业设备,专业设备还是要自己配置IP)

(2)点击PC1,进行IP设置

电脑的IP设置分为两种,分别是静态(手动设置)、DHCP(自动设置)

当前DHCP还没有进行设置,所以是拿不到地址的

下面点击DHCP,然后点击应用,然后点击命令行,输入ipconfig可以看到,ip都是0.0.0.0,说明现在还没有分配ip

(3)DHCP设置

可以设置路由器AR1,来充当DHCP的服务器,从而给客户端PC分配IP地址

plain 复制代码
1. 打开路由器的DHCP功能
dhcp enable
2. 给g0/0/0 开通分配地址的功能
interface g0/0/0
3. 选择接口
dhcp select interface

然后再次查看PC1命令行ifconfig,可以看到地址分配成功

(4)测试是否可以通信

点击PC1的命令行然后去ping,其他PC2、PC3的地址,看是否可以通信

DNS域名系统

ping 网址(域名)的实现

实际上就是PC会先去访问DNS服务器,然后DNS服务器就会返回biadu的IP,然后PC就会去访问百度IP去通信

这里选择DNS服务器,然后设置主机域名www.baidu.com然后设置IP地址,然后点击启动

将服务器和交换机进行连接,然后服务器也是需要一个IP的,这里进行设置192.168.1.100

但是此时PC还不知道DNS服务器的存在,所以还需要在路由器上进行配置

plain 复制代码
1.  系统视图
sy
2. 进入这个接口
int g0/0/0
3. 配置一下路由器上的DNS
dhcp server dns-list 192.168.1.100

此时路由器上的DNS就配置好了,然后PC的IP配置重新启动一下,然后再次ping www.baidu.com尝试

网关

网关作用:用来连接不同的网段

再加一台PC,然后设置一个其他网段的IP,然后让这台PC4和PC1进行通信,

所以其实就是让路由器AR1作为PC4 100和PC1 192的网关

可以看到PC1的网关就是192.168.1.1,这个网关就在路由器AR1这里

设置PC4的IP地址100.100.100.100,子网掩码为255.255.255.0,网关为100.100.100.1

这个100.100.100.1的网关就是PC4和路由器AR1相连的接口上

下面进行配置,打开路由器AR1的命令行

plain 复制代码
1. 查看视图
sy
2. 进入g0/0/1这个接口
int g0/0/1
3. 在这个接口上配置 100.100.100.1
ip add 100.100.100.1

配置完成后,然后点击PC1命令行,尝试ping 100.100.100.100

如果路由器上连接了多个接口,那么怎么判断应该从哪个口进行转发?

路由器内部有一个判断的依据,这个依据就是 "路由表"

plain 复制代码
display ip routing-table

而在实际工作中,路由表中的数据很多,快速查看进行筛选

plain 复制代码
display ip routing-table 100.100.100.100

网络安全

Vlan

Vlan:虚拟局域网

将真实的局域网划分为多个虚拟的局域网,实现不同虚拟局域网的隔离,并且虚拟局域网(Vlan)可以实现病毒的隔离,可以限制病毒只在一个Vlan中传播,也就是限制病毒传播范围,降低病毒的影响。

Vlan应用在交换机上

默认情况下,这两台电脑是可以进行通信的,下面就是使用Vlan技术,将这两台电脑放入不同的Vlan中,进行隔离,就不能进行通信了。

(1)分别配置PC1的IP地址:1.1.1.1和子网掩码:255.255.255.0

PC2的IP地址:1.1.1.2和子网掩码:255.255.255.0

然后在PC1的命令行中测试一下 ping 1.1.1.2

(2)点击交换机

plain 复制代码
1. 视图
sy
2. 创建Vlan10,然后退出q
Vlan 10
q
3. vkab
4. 创建Vlan20
Vlan 20
q
5. 查看Vlan是否创建成功
display vlan

vlan1是默认的

(3)将PC1和PC2放入不同的Vlan中

将G0/0/1放入vlan10,将G0/0/2放入vlan20

配置交换机的g0/0/1接口和g0/0/2接口到Vlan中

plain 复制代码
1. 进入g0/0/1接口
int g0/0/1
2. 将g0/0/1接口的类型设置为access
port link-type access
3. 将g0/0/1接口放进vlan10中
port default vlan 10
q
4. 查看是否划分成功
display vlan

交换机的接口模式

  • Access:用来连接终端,电脑、打印机
  • Trunk:用来连接其他的交换机

同样的操作配置g0/0/2到vlan20中

plain 复制代码
1. 进入g0/0/2接口
int g0/0/2
2. 将g0/0/2接口的类型设置为access
port link-type access
3. 将g0/0/2接口放进vlan20中
port default vlan 20
q
4. 查看是否划分成功
display vlan

(4)再次ping尝试通信,验证是否设置成功

可以看到ping不同,这就是通过vlan实现隔离

trunk

交换机1把数据交给交换机2,那么交换机2怎么知道这个数据是哪个Vlan中的呢?

解决的办法就是给这个数据包做一个标记,标记它是哪个Vlan中的,也就是当交换机1和交换机2中间的线路被配置为trunk时就携带标签。

设置PC1和PC3都为Vlan10然后可以进行通信,设置PC2和PC4都为Vlan20然后可以进行通信;

(1)设置交换机1和交换机2的连接线路为trunk模式

plain 复制代码
1. 进入接口
int g0/0/3

2. 设置接口为trunk模式
port link-type trunk

3. 设置trunk接口允许所有Vlan通过(这里是为了方便才写all)
port trunk allow-pass Vlan all

(2)配置交换机2的Vlan

plain 复制代码
1. 视图
sy
2. 创建Vlan
Vlan 10
Vlan 20
q
5. 查看Vlan是否创建成功
display vlan

(3)划分g0/0/2到vlan10中,g0/0/3到vlan20中

plain 复制代码
1. 进入g0/0/2接口
int g0/0/2

2. 将g0/0/2接口的类型设置为access
port link-type access

3. 将g0/0/2接口放进vlan10中
port default vlan 10

4. 查看是否划分成功
display vlan
_______________________________
1. 进入g0/0/3接口
int g0/0/3

2. 将g0/0/3接口的类型设置为access
port link-type access

3. 将g0/0/3接口放进vlan20中
port default vlan 20

4. 查看是否划分成功
display vlan

(4)配置交换机2(LSW2)的G0/0/1的接口为trunk模式

plain 复制代码
1. 进入接口
int g0/0/1

2. 设置接口为trunk模式
port link-type trunk

3. 设置trunk接口允许所有Vlan通过(这里是为了方便才写all)
port trunk allow-pass Vlan all

(5)给PC3和PC4配置上IP地址和子网掩码

PC3的IP:1.1.1.3 子网掩码:255.255.255.0

PC4的IP:1.1.1.4 子网掩码:255.255.255.0

(6)测试:用PC1尝试pingPC3的地址

这两个都在同一个Vlan10中,所以是可以通信的

三层交换技术

先用vlan把用户隔离开,然后再用-技术,把隔离开的设备连起来;

这样做的目的是,隔离只是隔离故障、病毒,但连通的是正常的通信。

(1)配置PC1和PC2的IP、子网掩码、网关

PC1:IP:1.1.1.1 子网掩码:255.255.255.0 网关:1.1.1.254

PC2:IP:2.2.2.1 子网掩码:255.255.255.0 网关:2.2.2.254

(2)配置交换机2的Vlan10、Vlan20

plain 复制代码
1. sy

2. vlan10
3. vlan20

4. 进入接口,配置vlan
int g0/0/1

接口的类型设置为access
port link-type access

port default vlan 10

int g0/0/2
port link-type access
port default vlan 20

4. 查看是否划分成功
display vlan

(3)配置交换机2(LSW2)的G0/0/3的接口为trunk模式

plain 复制代码
1. 进入接口
int g0/0/3
2. 设置接口为trunk模式
port link-type trunk

3. 设置trunk接口允许所有Vlan通过(这里是为了方便才写all)
port trunk allow-pass Vlan all

(4)配置交换机1为网关

plain 复制代码
1. sy
2. vlan10
3. vlan20
4. int g0/0/1
5. port link-type trunk
6. port trunk allow-pass vlan all

7. interface Vlanif 10

8. ip address 1.1.1.254 255.255.255.0

9. interface vlan 20
10. ip address 2.2.2.254 255.255.255.0

(5)测试:PC1去尝试和PC通信

单臂路由

单臂接口,其实就是将路由上的G0/0/0接口分成两个子接口,每个子接口对应一个Vlan,作为一个Vlan的网关。

(1)配置PC1和PC2的IP、子网掩码、网关

PC1:IP:1.1.1.1 子网掩码:255.255.255.0 网关:1.1.1.254

PC2:IP:2.2.2.1 子网掩码:255.255.255.0 网关:2.2.2.254

(2)配置交换机

plain 复制代码
1. sy
2. vlan 10
3. vlan 20

4. int g0/0/1
port link-type access
port default vlan 10

5. int g0/0/2
port link-type access
port default vlan 20

6. int g0/0/3
port link-type trunk
port trunk allow-pass vlan all

(3)配置路由器

plain 复制代码
1. sy

2. 表示将物理接口分成两个子接口
int g0/0/0.10
int g0/0/0.20
q(退出当前接口)
3. int g0/0/0.10

4. 指定这个接口和vlan 10关联
dot1q termination vid 10

5. 允许arp进行广播
arp broadcast enable(通信必备协议,解析某个ip对应的mac)

6. 配置ip,当做网关
ip address 1.1.1.254 255.255.255.0

7. int g0/0/0.20
指定这个接口和vlan 20关联
dot1q termination vid 20
5. 允许arp进行广播
arp broadcast enable(通信必备协议,解析某个ip对应的mac)
6. 配置ip,当做网关
ip address 2.2.2.254 255.255.255.0

(4)测试PC1到PC2的通信

ACL访问控制表

实现vlan10的机器可以访问vlan20,vlan10的机器不可以访问vlan30的要求

ACL访问控制实现:

  1. 创建一个访问控制规则
  2. 在接口调用这个规则

(1)

前置根据图片中的IP配置PC

PC1:IP:192.168.10.1 子网掩码:255.255.255.0 网关:192.168.10.254

PC2:IP:192.168.20.1 子网掩码:255.255.255.0 网关:192.168.20.254

PC3:IP:192.168.30.1 子网掩码:255.255.255.0 网关:192.168.30.254

(1)配置交换机2

plain 复制代码
1. sy
2. vlan 30
3. int e0/0/4
4. port list-type access
5. port default vlan 30

(2)配置交换机1

plain 复制代码
1. sy
2. vlan 30
3. ip add 192.168.30.254 255.255.255.0

4. vlan 10
5. int g0/0/1
6. port link-type trunk
7. port trunk allow-pass vlan all
......

(3)配置交换机1的acl

访问控制列表:高级的、基本的(basic只会看原地址,不会看目标地址)

plain 复制代码
1. acl name test advance

2. 控制规则:拒绝30
rule deny ip source 192.168.10.0  0.0.0.255 destination
192.168.30.0 0.0.0.255

3. 控制规则:允许其他
rule permit ip source any destination any
q

在必经接口上,调用acl
4. int g0/0/1
5. traffic-filter inbound acl name test

(4)测试PC1通信PC3(不通),测试PC1通信PC2(通)

NAT网络地址转换

私网转公网(要访问外部的网络,必须要从私网地址转换为公网地址)

私网地址:

  1. 102.168.xx
  2. 10.xxxx
  3. 172.16.x.x 到 172.31.x.x

左边是内网地址192.168.1.1

(1)基本环境配置

PC1:IP:192.168.1.1 子网掩码:255.255.255 网关:192.168.1.254

plain 复制代码
1. sy
2. int g0/0/0
3. ip add 192.168.1.254 255.255.255.0
4. int g0/0/1
5. ip add 164.1.1.1 255.255.255.0
q
plain 复制代码
1. sy
2. int g0/0/0
3. ip add 64.1.1.10 255.255.255.0

(2)设置NAT

plain 复制代码
1. acl name neiwang basic

2. rule permit source 192.168.0.0 0.0.0.255
q
3. 设置NAT的规则池
net address-group 1 64.1.1.2 64.1.1.6 (范围2.3.4.5.6)

4. 查看acl编号
dis acl all

5. int g0/0/1
6. 接口关联acl-2999
nat outbound 2999 address-group 1

OSI

OSI七层作用

  1. 应用层:为应用程序提供服务;
  2. 表示层:进行数据格式的转化、加密和解密;
  3. 会话层:建立、管理和维护会话;
  4. 传输层:管理端到端之间的连接;
  5. 网络层:路由选择和地址映射;
  6. 数据链路层:建立逻辑连接,进行硬件地址寻址和差错校验;
  7. 物理层:建立、维护和断开物理连接;

常见协议

  1. 应用层

HTTP:超文本传输协议,提供浏览网页服务;

Telnet:远程登陆协议,提供远程管理服务;

FTP:文件传输协议,提供互联网文件资源共享服务;

SMTP:简单邮件传输协议,提供互联网电子邮件服务;

TFTP:简单文件传输协议,提供简单的文件传输服务;

  1. 传输层:

TCP:为应用程序提供可靠的面向连接的通信服务;

UDP:提供了无连接通信,且不对传送数据包进行可靠性的保证;

  1. 网络层:(路由器)

IP:将传输层的数据封装成数据包并完成源站点到目的站点的转发,提供无连接的,不可靠的服务;

IGMP:负责IP组播成员管理的协议。它用来在IP主机和与其直接相邻的组播路由器之间建立、维护组播成员关系。

ICMP:基于IP协议在网络中发送控制消息,提供可能发生在通信环境中的各种问题反馈。通过这些信息,使管理这可以对所发生的问题作出诊断,然后采取适当的措施解决。

  1. 数据链路层:

Ethernet:一种多路访问广播型数据链路层协议,是当前应用最为广泛的局域网技术。

PPP:一种点对点模式的数据链路层协议,多用于广域网。

PPPoE:(以太网承载PPP协议)常见的应用有家庭宽带拨号上网。

TCP和UDP报头

TCP报文头部

  1. Source Port:源端口,标识哪个应用程序发送,长度为16比特。
  2. Destination Port:目的端口,标识哪个应用程序接收,长度为16比特。
  3. Sequence Number:序列号,TCP链接中的每个报文都有序列号,长度为32比特。(TCP给每个数据包中放了个序列号,发送出去,对放就会回一个确认包,而确认包中就有确认号,通过这个确认号就可以知道对方已经将序列号为xx的数据包收到了)
  4. Acknowledgment Number:确认号,用于对收到的报文确认。
  5. Heather Length:头部长度,TCP报文头部长度,默认情况下,TCP头部为20字节。
  6. Control bits:控制位,包含FIN、ACK、SYN等标志位,各个标志位的作用,后续会讲解。
  7. Window:窗口TCP的流量控制,这个值表明当前接收端可接收的最大数据总数(以字节为单位)。窗口最大为65535字节。长度为16比特。
  8. Checksum:校验字段,由发端计算和存储,并由收端进行验证,用于校验数据传输中是否有损坏。

相关推荐
Avan_菜菜5 小时前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
SelectDB1 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
zzzzzz3103 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode3 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220703 天前
如何搭建本地yum源(上)
运维
大树886 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠6 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质6 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
小宇宙Zz6 天前
Maven依赖冲突
java·服务器·maven
Inhand陈工6 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信