AdguardTeam / AdguardTeam/AdGuardHome

Rewrite networking in package dhcpd to only use gopacket

Ouverte
#4,923 0 commentaires 1 réaction 1 personne assignée Réclamée par @EugeneOne1 Voir sur GitHub
enhancement external libs help wanted P3: Medium research
Langage dominant
TypeScript
Étoiles
36.9k
Forks
2.5k
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

### Prerequisites

- [X] I have checked the [Wiki](https://github.com/AdguardTeam/AdGuardHome/wiki) and [Discussions](https://github.com/AdguardTeam/AdGuardHome/discussions) and found no answer

- [X] I have searched other issues and found no duplicates

- [X] I want to request a feature or enhancement and not ask a question

### Description

#### What problem are you trying to solve?

Package `dhcpd` currently uses a lot of different modules and packages for networking, including `github.com/google/gopacket`, `github.com/insomniacslk/dhcp`, `github.com/mdlayher/ethernet`, and the deprecated `github.com/mdlayher/raw`. This creates all sorts of issues, including but not limited to:

1. portability;
2. API compatibility;
3. difficulty of package update and maintenance.

#### Proposed solution

Module `github.com/google/gopacket` seems to have either all or most of the things we require. If I am not mistaken, we could even enable DHCP on Windows, if we make sure that the networking works well there.

#### Alternatives considered

Go on as we do. See the problems with this approach above.

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.