大型企业网络DHCP服务器配置安装实践@FreeBSD

2024-06-24 02:12

本文主要是介绍大型企业网络DHCP服务器配置安装实践@FreeBSD,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

企业需求

需要为企业里的机器配置一台DHCP服务器。因为光猫提供DHCP服务的能力很差,多机器dhcp+多机器NAT拓扑方式机器一多就卡顿。使用一台路由器来进行子网络的dhcp和NAT服务,分担光猫负载,但是还有一部分机器需要放到光猫网络,这就需要再安装一台DHCP服务器。

技术选型

经过深思熟虑,这次我们选择使用isc-dhcp-server

isc-dhcp-server介绍

isc-dhcp-server 是一个开源的DHCP服务器软件,通常用于在Linux系统上自动分配IP地址给网络中的客户端。以下是关于 isc-dhcp-server 的详细介绍:

1. 软件概述

  • 名称isc-dhcp-server
  • 类型:开源DHCP服务器软件
  • 平台:支持在Linux系统上运行
  • 功能:为网络中的客户端自动分配IP地址、子网掩码、默认网关等网络配置信息

2. 安装与配置

安装

在基于Debian或Ubuntu的系统上,可以使用以下命令安装 isc-dhcp-server

sudo apt-get update  
sudo apt-get install isc-dhcp-server
配置
  • 主要配置文件/etc/dhcp/dhcpd.conf

  • 其他相关文件/etc/default/isc-dhcp-server(可能包含服务器的一些默认设置)

  • 配置内容:通常包括域名、DNS服务器地址、默认租期时间、子网定义等。例如:

# 设置域名  
option domain-name "example.com";  
# 设置DNS服务器  
option domain-name-servers ns1.example.com;  
# 设置默认租期时间  
default-lease-time 600;  
# 设置子网  
subnet 192.168.1.0 netmask 255.255.255.0 {  range 192.168.1.10 192.168.1.100;  option routers 192.168.1.1;  option subnet-mask 255.255.255.0;  
}

3. 工作原理

DHCP服务器负责维护一个IP地址池,当网络中的客户端请求IP地址时,服务器会从地址池中分配一个可用的IP地址给客户端,并记录相关信息(如分配的IP地址、租期等)。客户端在租期到期前可以续租IP地址,如果租期到期且没有续租,服务器会回收该IP地址供其他客户端使用。

4. 应用场景

  • 大型企业网络:在大规模的网络环境中,手动配置每台设备的IP地址是不现实的。使用DHCP服务器可以自动分配IP地址,减少管理成本。
  • 公共网络环境:如咖啡馆、图书馆等公共场所的Wi-Fi网络,使用DHCP服务器可以为来访者自动分配IP地址,提供便捷的上网体验。
  • 动态网络环境:在需要频繁添加或删除设备的网络环境中,使用DHCP服务器可以快速地分配或回收IP地址,适应网络的变化。

5. 注意事项

  • 在配置DHCP服务器时,需要确保服务器具有静态IP地址,并正确设置子网掩码、默认网关等网络参数。
  • 需要根据实际需求合理配置IP地址池的大小和租期时间,以避免IP地址耗尽或频繁更换IP地址带来的问题。
  • 在生产环境中部署DHCP服务器时,应确保服务器的安全性和稳定性,避免因为服务器故障或安全漏洞导致网络中断或数据泄露等问题。

 

安装配置实践

操作系统一如既往选择FreeBSD,所以我们要在FreeBSD系统安装 dhcp服务。

安装isc-dhcp-server

先用pkg search看看有哪些版本

pkg search dhcp
pkg: No SRV record found for the repo 'FreeBSD'
dhcp6-20080615.2_4             KAME DHCP6 client, server, and relay
dhcp_probe-1.3.1_2             Attempts to discover DHCP and BootP servers on a network
dhcpcd-10.0.6                  DHCP/IPv4LL/IPv6RS/DHCPv6 client
dhcpcd-ui-0.7.9_1              GTK / Curses interface to dhcpcd
dhcpd-6.6.20200413_1           OpenBSD dhcp daemon
dhcpd-pools-3.1_1              Tool to analyze isc-dhcp pool usage based on leases
dhcpdump-1.8_1                 Decode and diagnose sniffed DHCP packets
dhcping-1.2_1                  Send DHCP request to DHCP server for monitoring purposes
dhcprelya-6.1_1                Lightweight DHCP relay agent (Yandex edition)
isc-dhcp44-client-4.4.3P1_1    The ISC Dynamic Host Configuration Protocol client
isc-dhcp44-relay-4.4.3P1_1     The ISC Dynamic Host Configuration Protocol relay
isc-dhcp44-server-4.4.3P1_1    ISC Dynamic Host Configuration Protocol server
nagios-check_dhcp.pl-0.1       Check the availability of a DHCP server using unicast delivery
p5-Net-DHCP-0.700              DHCP set of classes designed to handle basic DHCP handling
p5-Net-DHCP-Watch-2.03_1       Class for monitoring a remote DHCPD server
p5-Net-DHCPClient-1.0_1        Perl implementation of a DHCP client API
p5-Text-DHCPLeases-1.0_1       Perl extension to parse DHCP leases file from ISC dhcpd
pxe-pdhcp-0.0.2007_1           Preboot Execution Environment server

查到当前的版本为:isc-dhcp44-server-4.4.3P1_1    ISC Dynamic Host Configuration Protocol server 

使用pkg安装

pkg install isc-dhcp44-server

安装好后提示:

Message from isc-dhcp44-server-4.4.3P1_1:--
****  To setup dhcpd, please edit /usr/local/etc/dhcpd.conf.****  This port installs the dhcp daemon, but doesn't invoke dhcpd by default.If you want to invoke dhcpd at startup, add these lines to /etc/rc.conf:dhcpd_enable="YES"				# dhcpd enabled?dhcpd_flags="-q"				# command option(s)dhcpd_conf="/usr/local/etc/dhcpd.conf"	# configuration filedhcpd_ifaces=""				# ethernet interface(s)dhcpd_withumask="022"			# file creation mask****  If compiled with paranoia support (the default), the following rc.confoptions are also supported:dhcpd_chuser_enable="YES"		# runs w/o privileges?dhcpd_withuser="dhcpd"		# user name to run asdhcpd_withgroup="dhcpd"		# group name to run asdhcpd_chroot_enable="YES"		# runs chrooted?dhcpd_devfs_enable="YES"		# use devfs if available?dhcpd_rootdir="/var/db/dhcpd"	# directory to run indhcpd_includedir="<some_dir>"	# directory with config-files to include****  WARNING: never edit the chrooted or jailed dhcpd.conf file but/usr/local/etc/dhcpd.conf instead which is always copied whereneeded upon startup.

开始配置

在/etc/rc.conf文件中加入如下内容

dhcpd_enable="YES"                              # dhcpd enabled?
dhcpd_flags="-q"                                # command option(s)
dhcpd_conf="/usr/local/etc/dhcpd.conf"  # configuration file
dhcpd_ifaces="igb0"                             # ethernet interface(s)

也可以在终端使用命令:

% sysrc dhcpd_enable="YES"
% sysrc dhcpd_ifaces="igb0"
% sysrc dhcpd_conf="/root/etc/dhcpd.conf"

配置/usr/local/etc/dhcpd.conf文件,加入

option domain-name "example.com";
option domain-name-servers 114.114.114.114,8.8.8.8;
option subnet-mask 255.255.255.0;
default-lease-time 600;
max-lease-time 7200;subnet 192.168.1.0 netmask 255.255.255.0 {range 192.168.1.50 192.168.1.99;option broadcast-address 192.168.1.255;option routers 192.168.1.1;
}
option domain-name "example.com";
option domain-name-servers 114.114.114.114,8.8.8.8;
option subnet-mask 255.255.255.0;
default-lease-time 600;
max-lease-time 7200;subnet 192.168.1.0 netmask 255.255.255.0 {range 192.168.1.50 192.168.1.99;option broadcast-address 192.168.1.255;option routers 192.168.1.1;
}

启动服务

service isc-dhcpd  start

这样服务就起来了!

这篇关于大型企业网络DHCP服务器配置安装实践@FreeBSD的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1088901

相关文章

ESP32 esp-idf esp-adf环境安装及.a库创建与编译

简介 ESP32 功能丰富的 Wi-Fi & 蓝牙 MCU, 适用于多样的物联网应用。使用freertos操作系统。 ESP-IDF 官方物联网开发框架。 ESP-ADF 官方音频开发框架。 文档参照 https://espressif-docs.readthedocs-hosted.com/projects/esp-adf/zh-cn/latest/get-started/index

Linux 安装、配置Tomcat 的HTTPS

Linux 安装 、配置Tomcat的HTTPS 安装Tomcat 这里选择的是 tomcat 10.X ,需要Java 11及更高版本 Binary Distributions ->Core->选择 tar.gz包 下载、上传到内网服务器 /opt 目录tar -xzf 解压将解压的根目录改名为 tomat-10 并移动到 /opt 下, 形成个人习惯的路径 /opt/tomcat-10

uniapp接入微信小程序原生代码配置方案(优化版)

uniapp项目需要把微信小程序原生语法的功能代码嵌套过来,无需把原生代码转换为uniapp,可以配置拷贝的方式集成过来 1、拷贝代码包到src目录 2、vue.config.js中配置原生代码包直接拷贝到编译目录中 3、pages.json中配置分包目录,原生入口组件的路径 4、manifest.json中配置分包,使用原生组件 5、需要把原生代码包里的页面修改成组件的方

2024.6.24 IDEA中文乱码问题(服务器 控制台 TOMcat)实测已解决

1.问题产生原因: 1.文件编码不一致:如果文件的编码方式与IDEA设置的编码方式不一致,就会产生乱码。确保文件和IDEA使用相同的编码,通常是UTF-8。2.IDEA设置问题:检查IDEA的全局编码设置和项目编码设置是否正确。3.终端或控制台编码问题:如果你在终端或控制台看到乱码,可能是终端的编码设置问题。确保终端使用的是支持你的文件的编码方式。 2.解决方案: 1.File -> S

【Altium】查找PCB上未连接的网络

【更多软件使用问题请点击亿道电子官方网站】 1、文档目标: PCB设计后期检查中找出没有连接的网络 应用场景:PCB设计后期,需要检查是否所有网络都已连接布线。虽然未连接的网络会有飞线显示,但是由于布线后期整板布线密度较高,虚连,断连的网络用肉眼难以轻易发现。用DRC检查也可以找出未连接的网络,如果PCB中DRC问题较多,查找起来就不是很方便。使用PCB Filter面板来达成目的相比DRC

C++必修:模版的入门到实践

✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:C++学习 贝蒂的主页:Betty’s blog 1. 泛型编程 首先让我们来思考一个问题,如何实现一个交换函数? void swap(int& x, int& y){int tmp = x;x = y;y = tmp;} 相信大家很快就能写出上面这段代码,但是如果要求这个交换函数支持字符型

VMware9.0详细安装

双击VMware-workstation-full-9.0.0-812388.exe文件: 直接点Next; 这里,我选择了Typical(标准安装)。 因为服务器上只要C盘,所以我选择安装在C盘下的vmware文件夹下面,然后点击Next; 这里我把√取消了,每次启动不检查更新。然后Next; 点击Next; 创建快捷方式等,点击Next; 继续Cont

vcpkg安装opencv中的特殊问题记录(无法找到opencv_corexd.dll)

我是按照网上的vcpkg安装opencv方法进行的(比如这篇:从0开始在visual studio上安装opencv(超详细,针对小白)),但是中间出现了一些别人没有遇到的问题,虽然原因没有找到,但是本人给出一些暂时的解决办法: 问题1: 我在安装库命令行使用的是 .\vcpkg.exe install opencv 我的电脑是x64,vcpkg在这条命令后默认下载的也是opencv2:x6

通过SSH隧道实现通过远程服务器上外网

搭建隧道 autossh -M 0 -f -D 1080 -C -N user1@remotehost##验证隧道是否生效,查看1080端口是否启动netstat -tuln | grep 1080## 测试ssh 隧道是否生效curl -x socks5h://127.0.0.1:1080 -I http://www.github.com 将autossh 设置为服务,隧道开机启动

通信系统网络架构_2.广域网网络架构

1.概述          通俗来讲,广域网是将分布于相比局域网络更广区域的计算机设备联接起来的网络。广域网由通信子网于资源子网组成。通信子网可以利用公用分组交换网、卫星通信网和无线分组交换网构建,将分布在不同地区的局域网或计算机系统互连起来,实现资源子网的共享。 2.网络组成          广域网属于多级网络,通常由骨干网、分布网、接入网组成。在网络规模较小时,可仅由骨干网和接入网组成