https://github.com/yamtaldev/dhcp
The DHCP server project efficiently manages IP address allocation within a network range. It offers a clear and well-documented interface and supports various functionalities, including IP allocation, deallocation, and counting available IP addresses. The code structure is designed for maintainability and future updates.
https://github.com/yamtaldev/dhcp
Last synced: over 1 year ago
JSON representation
The DHCP server project efficiently manages IP address allocation within a network range. It offers a clear and well-documented interface and supports various functionalities, including IP allocation, deallocation, and counting available IP addresses. The code structure is designed for maintainability and future updates.
- Host: GitHub
- URL: https://github.com/yamtaldev/dhcp
- Owner: YamtalDev
- License: mit
- Created: 2023-09-05T17:14:51.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2023-09-06T09:39:14.000Z (almost 3 years ago)
- Last Synced: 2025-02-03T05:44:04.101Z (over 1 year ago)
- Language: C
- Homepage:
- Size: 10.7 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# DHCP Server Project
This project implements a DHCP (Dynamic Host Configuration Protocol) server for managing IP address allocation within a network range. The DHCP server provides functions to create the server, allocate and free IP addresses, and count available (free) IP addresses. It efficiently handles scenarios like successful allocation, failed allocation, and double allocation attempts.
## Project Description
The DHCP server project efficiently manages IP address allocation within a network range. It offers a clear and well-documented interface and supports various functionalities, including IP allocation, deallocation, and counting available IP addresses. The code structure is designed for maintainability and future updates.
# Project Structure
The project is organized as follows:
- Header Files (include/): Contains the header files necessary for the project.
- Source Files (src/): Contains the source files for the DHCP server implementation.
- Tests (test/dhcp): Includes test files and a makefile for building running and
testing the project.
# Dependencies
The project relies on a trie data structure, which is included as trie.h and trie.c
in the project folders. also a test for the trie is provided.
# Building and Testing
To build and test the project, navigate to the test/dhcp folder and use the provided makefile:
```shell
# Simple compilation
$ make
# Running the project
$ make run
# Debugging the project
$ make debug
# Deleting all the obj, exe, shared/static libs files
$ make clean
# Checking valgrind on the project
$ make vlg
# Release compilation with optimization -O3
$ make release
```
## Contact
For any questions about the project:
### Name: Tal Aharon
### Email: tal.aharon.work@gmail.com