网络简介
Linux网络基础知识简介
联网
任何计算机系统最重要的方面之一就是其参与网络的能力。这可以在封闭的办公环境中,也可以在可以访问Internet(万维网)的独立设备中。如今,几乎所有计算机都以一种或另一种方式联网。为了使所有这些设备相互通信,它们必须全部理解相同的语言。要了解计算机如何与其他计算机和网络通信,我们需要对网络和使用的协议有基本的了解。
起源
我们今天所知的互联网是在1960年代初创建和发展的。在此期间,美国政府担心军事威胁可能导致美国一个地点与另一地点之间的通信中断。决定应该设计一个可以处理可能的大规模灾难和破坏的通信网络。该任务最初由DARPA(国防高级研究计划局)承担。在接下来的几年中,一些最伟大的思想家为这个项目工作,他们为该弹性系统设计了物理布局。这些人还负责创建一种将一种数据从一台设备移动到另一台设备的方法。该协议后来被称为传输控制协议Internet协议(TCP / IP)。
最初,互联网被称为ARPANET(高级研究计划局网络)。这个原始网络存在于美国各地的政府部门和大学中。随着时间的流逝,越来越多的教育机构参与了该项目。随着时间的流逝,出现了利用此新TCP / IP协议的新应用程序。FTP(文件传输协议)和SMTP(简单邮件传输协议)。
OSI网络模型
OSI(开放系统互连)定义了数据通信(网络)中涉及的设备应如何相互交互。OSI模型是由国际标准化组织(ISO)维护的技术标准。在该理论模型内,有七个层可以组织各种网络功能。 将这七个层
定义为:
应用层,表示层,会话层,传输层,网络层,数据链路层和物理层
然后将这七个层划分为另外两个级别:上层(7,6和5层)和下层(各层) 4,3,2和1):
层 | 名称 | 描述 |
---|---|---|
7 | 应用层 | 包含使用网络的应用程序。 |
6 | 表示层 | 确保以一致的方式将数据呈现给应用程序。 |
5 | 会话层 | 管理应用程序之间的连接。 |
4 | 运输层 | 数据如何从A 点移到B 点。在此执行数据检查,并在发生故障时重新传输数据。这里的协议是TCP和UDP。 |
3 | 网络层 | 两个链接之间的数据路由。这里的主要目标是从点A 到点B 获取数据。 |
2 | 链接层 | 提供跨物理层的可靠数据传输。 |
1个 | 物理层 | 该层负责通过网络通信介质传输数据 |
通讯协议
TCP / IP实际上是最流行的一套协议(TCP)传输控制协议,(IP)Internet协议,(UDP)用户数据报协议和(ICMP)Internet控制消息协议。这些协议中的许多协议都使用握手方法进行可靠的通信,从而保持数据包的到达顺序和错误处理。不交换此信息的协议称为无连接,并被分类为不可靠。TCP是可靠的协议,而UDP不是。
通常,应用程序会选择要使用的适当协议。例如,如果您正在网上冲浪,则不想丢失数据,因为这可能很糟糕。如果要下载程序,则不想丢失一些字节的代码!。这就是为什么将TCP选择为协议的原因。诸如DNS之类的此类服务将使用UDP,因为这可以返回快速的响应时间。
TCP协议
TCP是应用程序用来建立网络连接的面向连接的传输代理。TCP保证数据包到达并维持接收到的数据包的正确顺序。TCP是其他网络服务使用的主要协议之一。其中包括FTP(文件传输协议),ssh(安全外壳)和SMTP(简单邮件传输协议)。选择TCP是因为它具有内置的错误检查机制。
IP产权
IP是一种无连接协议,它定义了数据报,寻址方案(Ip地址)。IP被认为是Internet的基础。
UDP协议
UDP是无连接的传输代理。这意味着UDP无法保证包将到达其目的地。使用UDP的程序将必须执行自己的错误检查。UDP由DNS和NFS之类的应用程序使用。
ICMP
ICMP(Internet控制消息协议)是一种控制协议,意味着它不承载应用程序数据,而是承载与网络本身有关的信息。ICMP用于网络中的错误报告和流控制。ICMP可以用于检测无法访问的网络,网络组件可以使用ICMP来指示发送方使用其他网关。ICMP协议的一种流行用法是ping命令。
网络寻址和路由
多年来,IPv4(Internet协议版本4)一直是用于为网络上的主机和设备分配唯一地址的默认标准。这32位地址通常被称为点分四边形
,因为它们是由句点``分隔的四个8位字段。在IPv4下,有42.9亿个地址。但是,这些地址的大块被保留,不能用于公共分配。
点分IPv4地址及其二进制等效项的示例:192.168.0.5(11000000 10101000 00000000 00000101)
IPv4地址被组织为类:
地址类别 | IP地址范围 |
---|---|
A类 | 0.0.0.0至127.255.255.255 |
B级 | 128.0.0.0至191.255.255.255 |
C级 | 192.0.0.0至223.255.255.255 |
D级 | 224.0.0.0至239.255.255.255 |
E类 | 240.0.0.0至247.255.255.255 |
随着时间的流逝,这些IPv4地址已被大量利用,并且担心我们会完全用完这些地址。为了缓解这种情况,出现了各种有助于解决这种情况的技术。NAT(网络地址转换),(CIDR)无类域间路由和IPv6的创建。一种流行的方法是使用所谓的专用IP寻址。基本上,这意味着公司,家庭网络都可以使用相同的内部IP地址,因为它们无法路由并且无法通过Internet访问。这就是NAT发挥作用的地方。大多数ISP(Internet服务提供商)只会给您一个IP地址。如果您将路由器作为网络的一部分,这将使用NAT允许多个设备使用该IP地址,但允许每个设备在内部网络中保持唯一。然后,这将使所有设备都可以访问Internet。
IPv4网络的专用地址范围如下:
地址类别 | 专用IP地址范围 |
---|---|
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 |
Linux中查看ip地址 ip address show
CIDR-无类域间路由
对抗IPv4地址利用率的另一种方法是使用CIDR(无类域间路由)。该方法摆脱了基于类
的常见分配IP地址。现在使用CIDR表示法指定IPV4地址。使用CIDR的IP地址的格式为Address / Prefix。前缀指定子网掩码使用的位数。
IP地址192.168.0.1/24的示例:
地址: | 192.168.0.1 | 11000000.10101000.00000000. 00000001 |
---|---|---|
掩码: | 255.255.255.0 = 24 | 11111111.11111111.11111111. 00000000 |
通配符: | 0.0.0.255 | 00000000.00000000.00000000. 11111111 |
=>
网络: | 192.168.0.0/24 | 11000000.10101000.00000000. 00000000
主机IP最小值: | 192.168.0.1 | 11000000.10101000.00000000. 00000001
主机IP最大值: | 192.168.0.254 | 11000000.10101000.00000000. 11111110
广播: | 192.168.0.255 | 11000000.10101000.00000000. 11111111
主机/网络: | 254 | C类,专用互联网
IPv6-Internet协议版本6
IPV6是Internet协议(IP)的最新版本。这是将替代IPv4的协议。IPv6是由Internet工程任务组(IETF)开发的,用于处理IPv4地址的耗尽。随着越来越多的设备连接起来,需要更多的IP地址。为了解决这个问题,IPV6使用一个128位地址,从而大大增加了IP地址的数量,使唯一IP地址的数量达到惊人的340,282,366,920,938,,000,000,000,000,000,000,000,000,000,000
。
IPv6地址由八组四个十六进制数字组成,中间用冒号:
分隔。
IPV6 地址: 1040:0000:0000:0000:0005:0060:125c:135d
- 可以表示为:
1040:0:0:0:5:60:125c:135d
- 此处删除了所有前导零。 还可以将其进一步简化为:
1040::5:60:125c:135d
- 此处的双冒号:
表示一系列零
子网掩码,广播地址和IP地址范围
子网掩码
子网掩码是一个32位数字,可屏蔽IP地址,并将IP地址分为网络地址和主机地址。通过将网络位设置为全1
,并将主机位设置为全零0
,可以形成子网掩码。通常保留两个主机地址用于特殊目的。为0
地址分配了一个网络地址,为255
分配了一个广播地址。这些地址不能分配给主机。
广播地址
广播地址是使连接到网络的所有设备都能接收数据报的地址。发送到广播地址的消息通常被所有网络连接的主机接收。
网络ID
网络ID是IP地址的网络部分,用于标识主机所在的子网。计算机所在的子网由网络掩码和IP地址确定。子网地址与网络ID相同,是IP地址的开始部分。
TCP / IP网络中使用的通用端口
以下是各种服务使用的端口的列表。
端口号 | 用法 | 描述 |
---|---|---|
20和21 | FTP数据和FTP控制 | 在FTP会话期间,数据流经端口20,而控制信息流经端口21 |
23 | 远程登录 | Telnet请求发送到此端口 |
25 | SMTP | MTA使用的端口25(邮件传输代理-电子邮件) |
53 | 域名解析 | 域名系统 |
67 | BOOTP / DHCP服务器 | 发放IP地址 |
68 | BOOTP / DHCP客户端 | BOOTP / DHCP的客户端 |
80 | HTTP服务器 | Web服务器在此端口上侦听 |
110 | POP3 | 邮局协议-由邮件客户端程序用于将邮件传输到服务器 |
119 | NNTP | 由新闻服务器和Usenet新闻使用 |
143 | IMAP | Internet邮件访问协议-POP3的替代方法 |
161 | SNMP协议 | 简单网络管理协议 |
系统已知的端口可以在/etc/services
中找到。
端口号1到1023通常称为特权端口,因为使用这些端口的服务通常以root特权运行。
端口号范围从1024到65535,称为非特权端口。这些可以由普通用户使用。