AdguardTeam / AdguardTeam/AdGuardHome

Rewrite networking in package dhcpd to only use gopacket

Abierto
#4,923 0 comentarios 1 reacción 1 asignado Reclamado por @EugeneOne1 Ver en GitHub
enhancement external libs help wanted P3: Medium research
Lenguaje dominante
TypeScript
Estrellas
36.9k
Forks
2.5k
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

### 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.

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.