mirror of
https://github.com/microsoft/WSL.git
synced 2025-12-13 19:48:25 -06:00
16 lines
647 B
Markdown
16 lines
647 B
Markdown
# GNS
|
|
|
|
`gns` is a process created by `mini_init`. Its job is to configure networking within the WSL2 virtual machine.
|
|
|
|
## Networking configuration
|
|
|
|
Networking settings are shared by all WSL2 distributions. While WSL2 is running, `gns` maintains an hvsocket channel to [wslservice.exe](wslservice.exe.md), which is used to send various networking related configurations such as:
|
|
|
|
- Interface IP configuration
|
|
- Routing table entries
|
|
- DNS configuration
|
|
- MTU size configuration
|
|
|
|
When DNS tunneling is enabled, `gns` is also responsible for replying to DNS requests.
|
|
|
|
See `src/linux/init/GnsEngine.cpp` and `src/windows/service/exe/GnsChannel.cpp` |