-
Notifications
You must be signed in to change notification settings - Fork 5.6k
Description
Description
Expected interface name is not returned for network.interface on Windows 10 salt clients.
Intended result: Have minions contact salt-master via wireguard tunnel, named "salt-client". This network is confirmed to: work, pingable on both minion/master machines and correctly applies salt states, minion client upgrades, etc. through the tunnel without specifying the interface, salt-minions will use the correct network adapter to contact the salt-master over wireguard (working).
However, explicitly specifying the interface name will cause windows minions to fail.
Linux
source_interface_name: salt-client
Working as intended. Properly identifies the salt-client wireguard tunnel and uses it.
Windows
source_interface_name: salt-client
Will report that the interface does not exist.
windows salt-client interface retrieval.
.\salt-call.bat network.interface salt-client
[ERROR ] Interface "salt-client" not in available interfaces: "Software Loopback Interface 1", "Intel(R) Ethernet Connection (2) I219-V", "Wintun Userspace Tunnel"
local:
Interface "salt-client" not in available interfaces: "Software Loopback Interface 1", "Intel(R) Ethernet Connection (2) I219-V", "Wintun Userspace Tunnel"
powershell reports interface names appropriately.
Get-NetAdapter
Name InterfaceDescription ifIndex Status MacAddress LinkSpe
ed
---- -------------------- ------- ------ ---------- -------
Ethernet 2 Adapter for Windows 19 Up AA-BB-CC-DD-EE-FF ...Mbps
Ethernet Intel(R) Ethernet Connection (2) I219-V 5 Up AA-BB-CC-DD-EE-FF 1 Gbps
salt-client WireGuard Tunnel 3 Up ...Gbps
Control Panel reports properly as well.
- Ignore "no network access" This is on a non-routable network block. Connection works fine.
Detailed interface list shows
This shows that saltstack is pulling the interface from the interface description (I'm guessing WMI, as the description is different from even the powershell listing).
A clear and concise description of what the bug is.
Expected interface name is not returned for network.interface on Windows 10 salt clients.
Expected Name: salt-client
Returned Name: Wintun Userspace Tunnel
This value is used in salt minion source_interface_name
and diverges from linux minions.
Setup
(Please provide relevant configs and/or SLS files (be sure to remove sensitive info).
See above.
Steps to Reproduce the behavior
(Include debug logs if possible and relevant)
- Setup a working wireguard network between minion and master (I can send my wireguard formula, but that is relatively complicated and not the core issue here).
- Confirm minion and master can communicate and apply states over wireguard network without needing to specify the adapter name, on a private IP address space (/24).
- Explicitly set network adapter name in config:
c:/salt/minion
source_interface_name: salt-client
- Run
state.highstate
or./salt-call network.interface salt-client
Expected behavior
A clear and concise description of what you expected to happen.
The same behavior as linux.
network.interface salt-client
returns the correct interface.
source_interface_name: salt-client
is valid for windows salt minions properly configured.
Versions Report
salt-master
Salt Version:
Salt: 3000.3
Dependency Versions:
cffi: Not Installed
cherrypy: Not Installed
dateutil: 2.7.3
docker-py: Not Installed
gitdb: 2.0.5
gitpython: 2.1.11
Jinja2: 2.10
libgit2: Not Installed
M2Crypto: Not Installed
Mako: Not Installed
msgpack-pure: Not Installed
msgpack-python: 0.5.6
mysql-python: Not Installed
pycparser: Not Installed
pycrypto: 2.6.1
pycryptodome: 3.6.1
pygit2: Not Installed
Python: 3.7.3 (default, Dec 20 2019, 18:57:59)
python-gnupg: Not Installed
PyYAML: 3.13
PyZMQ: 17.1.2
smmap: 2.0.5
timelib: Not Installed
Tornado: 4.5.3
ZMQ: 4.3.1
System Versions:
dist: debian 10.4
locale: UTF-8
machine: x86_64
release: 4.19.0-9-amd64
system: Linux
version: debian 10.4
salt-minion (windows)
Salt Version:
Salt: 3000.2
Dependency Versions:
cffi: 1.12.2
cherrypy: 17.4.1
dateutil: 2.8.0
docker-py: Not Installed
gitdb: 2.0.5
gitpython: Not Installed
Jinja2: 2.10.1
libgit2: Not Installed
M2Crypto: Not Installed
Mako: 1.0.7
msgpack-pure: Not Installed
msgpack-python: 0.5.6
mysql-python: Not Installed
pycparser: 2.19
pycrypto: Not Installed
pycryptodome: 3.8.1
pygit2: Not Installed
Python: 3.5.4 (v3.5.4:3f56838, Aug 8 2017, 02:17:05) [MSC v.1900 64 bit (AMD64)]
python-gnupg: 0.4.4
PyYAML: 5.1.2
PyZMQ: 18.0.1
smmap: 2.0.5
timelib: 0.2.4
Tornado: 4.5.3
ZMQ: 4.3.1
System Versions:
dist:
locale: cp1252
machine: AMD64
release: 10
system: Windows
version: 10 10.0.18362 SP0 Multiprocessor Free
salt-minion (linux)
Salt Version:
Salt: 3000.3
Dependency Versions:
cffi: Not Installed
cherrypy: Not Installed
dateutil: 2.6.1
docker-py: Not Installed
gitdb: Not Installed
gitpython: Not Installed
Jinja2: 2.10
libgit2: Not Installed
M2Crypto: Not Installed
Mako: Not Installed
msgpack-pure: Not Installed
msgpack-python: 0.5.6
mysql-python: Not Installed
pycparser: Not Installed
pycrypto: 2.6.1
pycryptodome: Not Installed
pygit2: Not Installed
Python: 3.6.9 (default, Apr 18 2020, 01:56:04)
python-gnupg: 0.4.1
PyYAML: 3.12
PyZMQ: 16.0.2
smmap: Not Installed
timelib: Not Installed
Tornado: 4.5.3
ZMQ: 4.2.5
System Versions:
dist: Ubuntu 18.04 bionic
locale: UTF-8
machine: x86_64
release: 5.3.0-53-generic
system: Linux
version: Ubuntu 18.04 bionic
Additional context
Add any other context about the problem here.
Happy to upgrade windows minion to 3000.3; but that's a red herring, giving the return value context for the windows minion.
edit: provided the right versions report for windows client.