DHCP与FTP

DHCP

dhcp:动态主机配置的协议,应用在大型的局域网环境中

服务端和客户端

服务端:提供IP地址,某种特定功能的提供者
客户端:请求IP地址,请求对应的功能的使用者
服务端的端口号:67
客户端的端口号:68

DHCP的作用

dhcp的作用:

  • 集中地址管理(地址池,可用IP地址的范围)
  • 自动分配客户端的IP地址,gateway(网关),dns信息等等

dhcp的优点

dhcp的优点:

  • 降低配置和部署设备的时间
  • 降低了配置发生错误的可能
  • 集中化管理ip地址的分配
  • 提高了IP的利用率

dhcp的工作原理

dhcp的工作原理:服务端 :提供服务 客户端 :请求服务
1、客户端初始化时,不知道客户端是谁,整个网络中发送广播(DSICOVER报文)
2、服务端向客户端响应,发送offer报文,
3、客户端向服务端发送服务请求(request报文),请求报文只会发给第一个响应的服务端
4、服务端收到客户端的请求,从地址池中选择一个未被占用的IP地址以及租期信息,发送给客户端,发送ack报文
5、客户端收到服务端发送来的ack报文后,使用服务端提供的IP地址等服务

租期信息:默认情况下,服务端提供的IP地址使用使用期限模式7200秒,到期之后要重新向客户请求新的IP地址(IP地址可能会变化)

客户端下线之后:
1、客户端进行重新登录,发送一个包含之前dhcp服务端分配的ip信息的renew Request的报文
2、服务端收到请求后,尝试让客户端继续使用该地址,如果地址不可用,才会分配一个新的,回复客户端ack报文
租约到期:
租约到期之后,服务端会把IP地址收回,客户端如果想继续使用该IP地址,必须要更新租约
更新的方式:
祖约时间到一半,客户端发送renrw报文来续租期,服务端收到请求后,尝试让客户端继续使用该地址,如果地址不可用,租约到期之后才会分配一个新的,回复客户端ack报文

dhcp配置过程

Ubuntu系统:

服务端
vim /etc/dhcp/dhcpd.conf  #进入dhcp配置文件
subnet 192.168.42.0 netmask 255.255.255.0 {
子网                  子网掩码range 192.168.42.110 192.168.42.139;范围option routers 192.168.42.2;网关
}
#根据mac地址指定IP地址
host hostname {							hardware ethernet 00:0c:29:53:d1:cc;	fixed-address 192.16842.139;			
}
:wq  #保存退出
systemctl restart isc-dhcp-server  #重启dhcp
客户端
vim /etc/netplan/01-01-network-manager-all.yaml #配置网卡
# Let NetworkManager manage all devices on this system
network:ethernets:ens33:dhcp4: truegateway4: 192.168.42.2nameservers:addresses: [8.8.8.8,8.8.4.4]
:wq #保存退出
netplan  apply  #重启网卡
ifconfig   显示网络设备详细信息
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.42.139  netmask 255.255.255.0  broadcast 192.168.42.255inet6 fe80::20c:29ff:fe53:d1cc  prefixlen 64  scopeid 0x20<link>ether 00:0c:29:53:d1:cc  txqueuelen 1000  (以太网)RX packets 484  bytes 101818 (101.8 KB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 433  bytes 72917 (72.9 KB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536inet 127.0.0.1  netmask 255.0.0.0inet6 ::1  prefixlen 128  scopeid 0x10<host>loop  txqueuelen 1000  (本地环回)RX packets 163  bytes 13745 (13.7 KB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 163  bytes 13745 (13.7 KB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

CentOS系统:

服务端
cp dhcpd.conf.example  /etc/dhcp/  #把dhcp.conf.example文件复制/etc/dhcp目录下
cd /etc/dhcp  #切换到/etc/dhcp目录下
cp dhcpd.conf.example  dhcpd.conf   把dhcp.conf.example文件复制并且改名dhcpd.conf 
vim dhcpd.conf  #进入dhcp,conf配置文件
vim /etc/dhcp/dhcpd.conf  #进入dhcp配置文件
subnet 192.168.42.0 netmask 255.255.255.0 {
子网                  子网掩码range 192.168.42.110 192.168.42.139;范围option routers 192.168.42.2;网关
}
:wq  #保存退出
systemctl  restart  dhcpd  # 重启dhcp
客户端
vim /etc/netplan/01-01-network-manager-all.yaml #配置网卡
# Let NetworkManager manage all devices on this system
network:ethernets:ens33:dhcp4: truegateway4: 192.168.42.2nameservers:addresses: [8.8.8.8,8.8.4.4]
:wq #保存退出
netplan  apply  #重启网卡
ifconfig   显示网络设备详细信息
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.42.111  netmask 255.255.255.0  broadcast 192.168.42.255inet6 fe80::20c:29ff:fe53:d1cc  prefixlen 64  scopeid 0x20<link>ether 00:0c:29:53:d1:cc  txqueuelen 1000  (以太网)RX packets 484  bytes 101818 (101.8 KB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 433  bytes 72917 (72.9 KB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536inet 127.0.0.1  netmask 255.0.0.0inet6 ::1  prefixlen 128  scopeid 0x10<host>loop  txqueuelen 1000  (本地环回)RX packets 163  bytes 13745 (13.7 KB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 163  bytes 13745 (13.7 KB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

FTP

ftp:文件传输协议
文件传输协议:网络上控制文件的双向传输

端口号

ftp的端口号:

  • 20:建立数据连接,并传输文件数据
  • 21:建立连接控制,传输ftp的控制命令

连接方式

ftp的连接方式:apt
主动模式:服务端对客户端主动发起数据连接
被动模式:客户端对服务端发起连接

apt 是ssh这个服务自带的ftp程序
sftp:机密文件创建协议
vsftpd:基于开源应用的ftp协议

vsftpd配置文件

vim /etc/vsftpd.conf
进入vsftpd配置文件

在这里插入图片描述
在这里插入图片描述

chmod  -R  777 /srv/ftp  #修改ftp的权限
systemctl restart vsftpd  重启vsftpd

在windows上进入命令行
在这里插入图片描述

黑名单和白名单

黑名单:在这个名单上的用户才会拒绝连接 允许所有,拒绝个别

白名单:只有这个名单上的用户才可以连接 拒绝所有,允许个别

在工作中,使用白名单

vim /etc/vsftpd。conf #进入vsftpd配置文件
#在配置文件的第118行左右
userlist_file=/etc/vsftpd.userlist
#设置用户名单
userlist_deny=yes
#拒绝这个用户列表上的用户,开启的是黑名单,把yes改为no就是白名单
userlist_enable=yes
#开启用户列表的使用
:wq #保存退出
systemctl  restart vsftpd
vim /etc/vsftp.userlist #创建用户名单
输入用户名

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/470257.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spark 的容错机制:保障数据处理的稳定性与高效性

Spark 的介绍与搭建&#xff1a;从理论到实践_spark环境搭建-CSDN博客 Spark 的Standalone集群环境安装与测试-CSDN博客 PySpark 本地开发环境搭建与实践-CSDN博客 Spark 程序开发与提交&#xff1a;本地与集群模式全解析-CSDN博客 Spark on YARN&#xff1a;Spark集群模式…

【Qt-ROS开发】使用 Qt Creator 构建和编译含 ROS 库的 Qt 项目

【Qt-ROS】使用 Qt Creator 构建和编译含 ROS 库的项目 网上大多数办法是在 Qt creator中安装 ros_qtc_plugin 插件&#xff0c;项目以 ROS1 工作空间的形式构建&#xff0c;还是使用 catkin 来构建整个项目。但是这种方式局限很大&#xff0c;导入 Qt 的组件反而变得很麻烦&a…

彻底理解ARXML中的PDU

文章目录 一、DBC报文信号的发送二、ARXML报文信号的发送2.1 什么是PDU2.2 PDU的类型2.3 Container-I-PDU的发送 三、小结 在CANFD支持可变速率和更大的数据长度&#xff08;64字节&#xff09;的情况下&#xff0c;可以使用DBC和ARXML两种数据库格式来进行报文通信&#xff0c…

OpenGL【C++】台灯

#include<gl/glut.h> #include <math.h>/**************************************/ /* 设置灯旋转角度初始值和一些所用参数 */ /**************************************/ static GLfloat yrot -100.0; static GLfloat zrot 40.0; const GLfloat PI 3.141592…

初探鸿蒙:从概念到实践

一、鸿蒙开发的环境准备 开发工具&#xff1a;使用 DevEco Studio&#xff0c;支持 ArkTS 语法。 系统要求&#xff1a;确保计算机符合 DevEco Studio 的最低系统需求。安装步骤&#xff1a;下载 DevEco Studio&#xff0c;安装合适的 SDK 和模拟器 二、鸿蒙应用可以…

React Native 全新架构来了

React Native 0.76 现已在 npm 上以全新架构默认发布&#xff01; 在 0.76 版本的发布博客中&#xff0c;我们分享了此版本包含的一系列重大更改。在本文中&#xff0c;我们将概述全新架构以及它如何塑造 React Native 的未来。 全新架构全面支持现代 React 功能&#xff0c;…

git commit 校验

commitlint官方链接 1. npm install --save-dev commitlint/config-conventional commitlint/cli 2. 配置commitlint.config.cjs(项目根目录中&#xff09; module.exports {extends: [commitlint/config-conventional],rules: {type-enum: [2,always,[Feat, Fix, Doc, Style,…

vue2.x elementui 固定顶部、左侧菜单与面包屑,自适应 iframe 页面布局

vue elementui 固定顶部、左侧菜单与面包屑&#xff0c;自适应 iframe 页面布局 疑问点&#xff1a;iframe无法高度100%&#xff0c;如果写了100%就会有滚动条&#xff0c;所以只写了99.5% 【效果图】 路由示例 const routes [{title: Index,path: /,name: "Index"…

Coggle数据科学 | RAG编码模型对比:谁与OpenAI最为相似?

本文来源公众号“Coggle数据科学”&#xff0c;仅用于学术分享&#xff0c;侵权删&#xff0c;干货满满。 原文链接&#xff1a;RAG编码模型对比&#xff1a;谁与OpenAI最为相似&#xff1f; 在设计检索增强型生成&#xff08;RAG&#xff09;系统时&#xff0c;选择嵌入模型…

golang分布式缓存项目 Day1 LRU 缓存淘汰策略

注&#xff1a;该项目原作者&#xff1a;https://geektutu.com/post/geecache-day1.html。本文旨在记录本人做该项目时的一些疑惑解答以及部分的测试样例以便于本人复习。 LRU缓存淘汰策略 三种缓存淘汰策略 FIFO&#xff08;First In, First Out&#xff09;先进先出 原理&…

工业相机选取

1.相机分类&#xff1a; 1.1 在相机曝光方式中&#xff0c;全局曝光和卷帘曝光是两种主流技术。CCD相机通常采用全局曝光方式&#xff0c;而CMOS相机则可能采用卷帘曝光。 面阵相机与全局曝光关联与区别 关联&#xff1a;面阵相机可以使用全局曝光作为曝光方式&#xff0c;但…

如何查看电脑关机时间

要查看电脑的关机时间&#xff0c;可以按照以下步骤进行操作&#xff1a; 1. 打开事件查看器&#xff1a;按下键盘上的Windows键R键&#xff0c;然后在弹出的运行对话框中输入"eventvwr.msc"&#xff0c;并按下Enter键。 2. 在事件查看器窗口中&#xff0c;单击左侧窗…

jwt用户登录,网关给微服务传递用户信息,以及微服务间feign调用传递用户信息

1、引入jwt依赖 <dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt</artifactId><version>0.9.1</version></dependency> 2、Jwt工具类&#xff0c;生成token以及解析token package com.niuniu.gateway.uti…

SQL练习(2)

题源&#xff1a;牛客官网 选择题 假设创建新用户nkw&#xff0c;现在想对于任何IP的连接&#xff0c;仅拥有user数据库里面的select和insert权限&#xff0c;则列表语句中能够实现这一要求的语句是&#xff08;&#xff09; A grant select ,insert on *.* to nkw% B grant…

【MySQL从入门到放弃】InnoDB磁盘结构(一)

前言 从MySQL 5.5版本开始默认 使用InnoDB作为引擎&#xff0c;它擅长处理事务&#xff0c;具有自动崩溃恢复的特性&#xff0c;在日常开发中使用非常广泛。 下面是官方的InnoDB引擎架构图&#xff0c;主要分为内存结构和磁盘结构两大部分。 上一篇文章&#xff0c;我们解析了…

RT-DETR融合CVPR[2020]轻量化卷积模块Ghost Module模块

RT-DETR使用教程&#xff1a; RT-DETR使用教程 RT-DETR改进汇总贴&#xff1a;RT-DETR更新汇总贴 《GhostNet: More Features from Cheap Operations》 一、 模块介绍 论文链接&#xff1a;https://arxiv.org/abs/1911.11907 代码链接&#xff1a;GitHub - huawei-noah/Effici…

《TCP/IP网络编程》学习笔记 | Chapter 11:进程间通信

《TCP/IP网络编程》学习笔记 | Chapter 11&#xff1a;进程间通信 《TCP/IP网络编程》学习笔记 | Chapter 11&#xff1a;进程间通信进程间通信的基本概念通过管道实现进程间通信通过管道进行进程间双向通信 运用进程间通信习题&#xff08;1&#xff09;什么是进程间通信&…

2024 kali操作系统安装Docker步骤

1、更新系统 在开始之前&#xff0c;确保你的Kali系统是最新的。打开终端并运行以下命令&#xff1a; apt update 2、安装 apt install docker.io 3、查看启动状态 systemctl status docker 4、安装完 Docker 后&#xff0c;启动 systemctl start docker 5、启动并使…

LLMs之Code:Github Spark的简介、安装和使用方法、案例应用之详细攻略

LLMs之Code&#xff1a;Github Spark的简介、安装和使用方法、案例应用之详细攻略 目录 Github Spark的简介 Github Spark的安装和使用方法 1、安装 2、使用方法 Github Spark的案例应用 Github Spark的简介 2024年10月30日&#xff0c;GitHub 重磅发布GitHub Spark 是一…

MySQL数据库:SQL语言入门 【上】(学习笔记)

SQL&#xff08;Structured Query Language&#xff09;是结构化查询语言的简称&#xff0c;它是一种数据库查询和程序设计语言&#xff0c;同时也是目前使用最广泛的关系型数据库操作语言。&#xff08;95%适用于所有关系型数据库&#xff09; 【 SQL是关系型数据库通用的操作…