文件传输协议
主机之间传输文件是IP网络的一个重要功能,如今人们可以方便地使用网页、邮箱进行文件传输。
然而在互联网早期,Web(World Wide Web,万维网)还未出现,操作系统使用命令行的时代,用户使用命令行工具进行文件传输。其中最通用的方式就是使用FTP(File Transfer Protocol,文件传输协议)以及TFTP(Trivial File Transfer Protocol,简单文件传输协议)。
FTP基本概念
FTP采用典型的C/S架构(即服务器端与客户端模型),客户端与服务器端建立TCP连接之后即可实现文件的上传、下载。
针对传输的文件类型不同,FTP可以采用不同的传输模式:
ASCII模式:传输文本文件(TXT、LOG、CFG )时会对文本内容进行编码方式转换,提高传输效率。当传输网络设备的配置文件、日志文件时推荐使用该模式。
Binary(二进制)模式:非文本文件(cc、BIN、EXE、PNG),如图片、可执行程序等,以二进制直接传输原始文件内容。当传输网络设备的版本文件时推荐使用该模式。
FTP传输过程 - 主动模式
FTP存在两种工作方式:主动模式(PORT)和被动模式(PASV)。
FTP传输过程 - 被动模式
配置命令介绍 - 设备作为服务器端
用户通过FTP访问设备
1.开启FTP服务器端功能
[Huawei]ftp [ ipv6 ] server enable
缺省情况下,设备的FTP服务器端功能是关闭的。
2.配置FTP本地用户
[Huawei]aaa
[Huawei]local-user user-name password irreversible-cipher password
[Huawei]local-user user-name privilege level level
[Huawei]local-user user-name service-type ftp
[Huawei]local-user user-name ftp-directory directory
必须将用户级别配置在3级或者3级以上,否则FTP连接将无法成功。
配置命令介绍 - 设备作为客户端
1.VRP作为FTP客户端访问FTP服务器端
ftp 10.1.1.1
Trying 10.1.1.1 …
Press CTRL+K to abort
Connected to 10.1.1.1.
220 FTP service ready.
User(10.1.1.1:(none)):ftp
331 Password required for ftp.
Enter password:
230 User logged in.
2.VRP作为FTP客户端的常用命令
ascii Set the file transfer type to ASCII, and it is the default type
binary Set the file transfer type to support the binary image
ls List the contents of the current or remote directory
passive Set the toggle passive mode, the default is on
get Download the remote file to the local host
put Upload a local file to the remote host
配置示例
上述两台路由器,一台作为FTP服务器端,一台作为FTP客户端。
首先通过配置,在FTP服务器端上开启FTP服务,创建一个账号作为FTP登录使用账号。然后FTP客户端登录FTP服务器端并使用get命令下载一个文件。
TFTP基础
相较于FTP,TFTP的设计就是以传输小文件为目标,协议实现就简单很多:
使用UDP进行传输(端口号69)
无需认证
只能直接向服务器端请求某个文件或者上传某个文件,无法查看服务器端的文件目录。
TFTP传输示例
图片
配置命令介绍 - 设备作为客户端
1.VRP作为TFTP客户端下载文件
tftp TFTP_Server-IP-address get filename
TFTP无需登录,直接输入服务器端IP地址以及操作命令即可。
3.VRP作为TFTP客户端上传文件
tftp TFTP_Server-IP-address put filename
FTP无需登录,直接输入服务器端IP地址以及操作命令即可。
目前VRP设备只支持作为TFTP客户端。
Telnet应用场景
为方便通过命令行管理设备,可以使用Telnet协议对设备进行管理。
Telnet协议与使用Console接口管理设备不同,无需专用线缆直连设备的Console接口,只要IP地址可达、能够和设备的TCP 23端口通信即可。
支持通过Telnet协议进行管理的设备被称为Telnet服务器端,而对应的终端则被称为Telnet客户端。很多网络设备同时支持作为Telnet服务器端、Telnet客户端。
虚拟用户界面
当用户使用Console接口、Telnet等方式登录设备的时候,系统会分配一个用户界面(user-interface)来管理、监控设备与用户间的当前会话,每个用户界面视图可以配置一系列参数用于指定用户的认证方式、登录后的权限级别,当用户登录设备后将会受这些参数限制。
Telnet所对应的用户界面类型为VTY(Virtual Type Terminal,虚拟类型终端)。
配置命令介绍 (1)
1.开启Tellnet服务器端功能
[Huawei] telnet server enable
使能设备的Telnet服务器端功能。缺省情况下,设备的Telnet服务器端功能处于去使能状态,undo telnet server enable即可重新关闭Telnet服务器端功能。
2.进入用户视图
Huawei] user-interface vty first-ui-number [ last-ui-number ]
进入VTY用户界面视图。不同设备型号的VTY接口可能并不一致。
3.配置VTV用户界面视图,不同设备型号的VTY接口可能并不一致
[Huawei-ui-vty0-4]] protocol inbound { all | telnet }
缺省情况下,VTY用户界面支持的协议是SSH(Secure Shell Protocol ,安全外壳协议)和Telnet。
配置命令介绍 (2)
4.配置认证方式以及密码认证方式下的认证密码
[Huawei-ui-vty0-4] authentication-mode {aaa | none | password}
[Huawei-ui-vty0-4] set authentication password cipher
缺省情况下,无默认认证方式,需要进行手动配置。
不同VRP版本执行set authentication password cipher命令有差异:某些版本需要回车后输入密码,某些版本可直接在命令后输入密码。
配置示例 (1)
Telnet服务器端配置如下:
system-view
[Huawei] telnet server enable
[Huawei] aaa
[Huawei-aaa] local-user huawei password irreversible-cipher Huawei@123
[Huawei-aaa] local-user huawei privilege level 15
[Huawei-aaa] local-user huawei service-type telnet
[Huawei-aaa] quit
[Huawei] user-interface vty 0 4
[Huawei-ui-vty0-4] authentication-mode aaa
配置10.1.1.2作为Telnet服务器端,认证方式为AAA本地认证。在本地创建名为huawei的账号,密码为Huawei@123,权限为15级。
用户通过Telnet客户端软件登录并管理Telnet服务器端。
配置示例 (2)
Telnet 客户端操作:
配置10.1.1.2作为Telnet服务器端,认证方式为AAA本地认证。在本地创建名为huawei的账号,密码为Huawei@123,权限为15级。
用户通过Telnet客户端软件登录并管理Telnet服务器端。
手动配置网络参数的问题 (1)
手动配置网络参数的问题 (2)
DHCP基本概念
为解决传统的静态手工配置方式的不足,DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)应运而生,其可以实现网络动态合理地分配IP地址给主机使用。
DHCP采用C/S构架,主机无需配置,从服务器端获取地址,可实现接入网络后即插即用。
DHCP优点
DHCP工作原理
DHCP租期更新
配置命令介绍 (1)
1.开启DHCP功能
[Huawei] dhcp enable
2.开启接口采用接口地址池的DHCP服务器端功能
[Huawei-Gigabitthernet0/0/0]dhcp select interface
3.指定接口地址池下的DNS服务器地址
[Huawei-Gigabitthernet0/0/0]dhcp server dns-list ip-address
4.配置接口地址池中不参与自动分配的IP地址范围
[Huawei-Gigabitthernet0/0/0]dhcp server excluded-ip-address start-ip-address [ end-ip-address ]
5.配置DHCP服务器接口地址池中IP地址的租用有效期限功能
[Huawei-Gigabitthernet0/0/0]dhcp server lease { day day [ hour hour [ minute minute ] ] | unlimited }
缺省情况下,IP地址的租期为1天。
配置命令介绍 (2)
6.创建全局地址池
[Huawei]ip pool ip-pool-name
7.配置全局地址池可动态分配的IP地址范围
Huawei-ip-pool-2]network ip-address [ mask { mask | mask-length } ]
8.配置DHCP客户端的网关地址
[Huawei-ip-pool-2]gateway-list ip-address
9.配置DHCP客户端使用的DNS服务器的IP地址
[Huawei-ip-pool-2]dns-list ip-address
10.配置IP地址租期
[Huawei-ip-pool-2] lease { day day [ hour hour [ minute minute ] ] | unlimited }
11.使能接口的DHCP服务器功能
[Huawei-Gigabitthernet0/0/0]dhcp select global
DHCP接口地址池配置
DHCP服务器端配置如下:
[Huawei]dhcp enable
[Huawei]interface GigabitEthernet0/0/0
[Huawei-GigabitEthernet0/0/0]dhcp select interface
[Huawei-GigabitEthernet0/0/0]dhcp server dns-list 10.1.1.2
[Huawei-GigabitEthernet0/0/0]dhcp server excluded-ip-address 10.1.1.2
[Huawei-GigabitEthernet0/0/0]dhcp server lease day 3
需求描述:
配置一台路由器作为DHCP服务器端,使用接口GE0/0/0所属的网段作为DHCP客户端的地址池,同时将接口地址设为DNS Server地址,租期设置为3天
DHCP全局地址池配置
DHCP服务器端配置如下:
[Huawei]dhcp enable
[Huawei]ip pool pool2
Info: It’s successful to create an IP address pool.
[Huawei-ip-pool-pool2]network 1.1.1.0 mask 24
[Huawei-ip-pool-pool2]gateway-list 1.1.1.1
[Huawei-ip-pool-pool2]dns-list 1.1.1.1
[Huawei-ip-pool-pool2]lease day 10
[Huawei-ip-pool-pool2]quit
[Huawei]interface GigabitEthernet0/0/0
[Huawei-GigabitEthernet0/0/1]dhcp select global
需求描述:
配置一台路由器作为DHCP服务器端,配置全局地址池ip pool 2为DHCP客户端分配IP地址;分配地址为1.1.1.0/24网段,网关地址1.1.1.1,DNS地址同样也是1.1.1.1,租期10天,在GE0/0/0接口下调用全局地址池。
使用浏览器访问网页
当我们在浏览器中输入URL(Uniform Resource Locator,统一资源定位符)时,浏览器就可以从某处获取内容,并将页面内容显示在浏览器中。
HTTP(Hypertext Transfer Protocol,超文本传输协议):客户端浏览器或其他程序与Web服务器之间的应用层通信协议。
HTTP是典型的C/S构架应用,作为应用层协议使用TCP进行传输。
诞生背景
在互联网早期,为了进行文档之间的共享,人们提出了WWW(World Wide Web,万维网)。
WWW由三部分组成:在浏览器中显示文档内容的页面标记语言HTML(Hypertext Markup Language,超文本标记语言)、在网络上传输文档的协议HTTP、在网络上表明文档位置的URL。
WWW早期其实是浏览HTML的客户端应用程序的名称,现在则代表三项技术的合集,也可以简称为Web。
传输示例 (1)
传输示例 (2)
DNS的诞生
当我们在浏览器中输入一个域名访问某个网站时,这个域名最终会被解析为一个IP地址,我们的浏览器实际是在和这个IP地址进行通信。
负责将域名解析到IP地址的协议为DNS(Domain Name System,域名解析系统)。
网络中每个节点都有自己唯一的IP地址,通过IP地址可以实现节点之间的相互访问,但是如果和所有的节点进行通信都使用IP地址的方式,人们很难记住这么多IP地址,为此提出了DNS,将难以记忆的IP地址映射为字符类型的地址。
域名系统组成
域名:主机的字符标识方式。大部分情况下,我们访问网站时在浏览器内输入的URL就是该网站的域名。
域名解析服务器(DNS Server):负责维护域名与IP地址对应关系的数据库,并对解析者的请求进行响应。
域名的表示方法
域名的表示方法为:主机名.次顶级域名.顶级域名.根域,根域为“.”,一般最后的根域不表示。
DNS查询方式
DNS是一个分布式系统,绝大多数的DNS服务器端的数据库不会拥有所有的域名记录,当客户端向一个DNS服务器端查询域名但该DNS服务器端上却没有该域名的记录时,此时会有两种继续查询的方式:
递归查询:由DNS服务器向其他DNS服务器进行查询,将最终查询结果返回给DNS客户端
迭代查询:DNS服务器告知DNS客户端其他DNS服务器地址,客户端自行向其他DNS服务器进行查询。
图片
时间同步需求
当今企业园区网络中很多场景都需要所有设备保持时钟一致:
网络管理:对从不同路由器采集来的日志信息、调试信息进行分析时,需要以时间作为参照依据。
计费系统:要求所有设备的时钟保持一致。
多个系统协同处理同一个复杂事件:为保证正确的执行顺序,多个系统必须参考同一时钟。
备份服务器和客户机之间进行增量备份:要求备份服务器和所有客户机之间的时钟同步。
系统时间:某些应用程序需要知道用户登录系统的时间以及文件修改的时间。
NTP简介
如果采用管理员手工输入命令修改系统时间来进行时间同步,不但工作量巨大,而且也不能保证适中的精确性。为此可以使用NTP(Network Time Protocol)技术来同步设备的时钟。
网络时间协议NTP(Network Time Protocol)是TCP/IP协议族里面的一个应用层协议。NTP用于在一系列分布式时间服务器与客户端之间同步时钟。NTP的实现基于IP和UDP。NTP报文通过UDP传输,端口号是123。
NTP网络结构
主时间服务器:通过线缆或无线电直接同步到标准参考时钟,标准参考时钟通常是Radio Clock或卫星定位系统等。
二级时间服务器:通过网络中的主时间服务器或者其他二级服务器取得同步。二级时间服务器通过NTP将时间信息传送到局域网内部的其它主机。
层数(stratum):层数是对时钟同步情况的一个分级标准,代表了一个时钟的精确度,取值范围1~15,数值越小,精确度越高。1表示时钟精确度最高,15表示未同步。
FTP用于文件传输,传输不同的文件推荐使用不同的模式;由于其基于TCP,因此使用FTP传输文件可以保障传输的可靠性、高效性。
为解决手动分配IP地址产生的问题,使用DHCP进行动态IP地址分配可以有效减少管理员的工作量,避免用户手动配置网络参数造成的IP地址冲突。