mirror of
https://github.com/microsoft/WSL.git
synced 2025-07-04 15:49:35 +00:00
16 lines
648 B
Markdown
16 lines
648 B
Markdown
![]() |
# GNS
|
||
|
|
||
|
`gns` is a process created by `mini_init`. Its jobs 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`
|