Details on the available powercli options to disable the service are documented here
To implement the workaround perform the following steps:
1 Login to the ESXi hosts using an SSH session (such as putty)
2 Stop the SLP service on the ESXi host with this command:
/etc/init.d/slpd stop
Note: The SLP service can only be stopped when the service is not in use. Use the following command to view the operational state of Service Location Protocol Daemon:
esxcli system slp stats get
3 Run the following command to disable the SLP service:
esxcli network firewall ruleset set -r CIMSLP -e 0
To make this change persist across reboots:
chkconfig slpd off
To check if the change is applied across reboots:
chkconfig --list | grep slpd
output: slpd off
To remove the workaround perform the following steps:
- Run the following command to enable the ruleset of SLP service:
esxcli network firewall ruleset set -r CIMSLP -e 1
- Run the following command to change the current startup information of slpd service:
chkconfig slpd on
Run the following command to check if the change is applied after running the above step (Step 2#):
chkconfig --list | grep slpd
output: slpd on
- Run the following command to start the SLP service:
/etc/init.d/slpd start
- Disable and enable the CIM agent, see How to disable or enable the CIM agent on the ESX/ESXi host
Later versions of ESXi report the SLPD service in the vCenter GUI
1. To check if you can update the SLP service via the vSphere client, login to the vCenter
2 Select the ESXi host and click on "Configure" -- "Services". Look for SLP in the list
If SLP is not listed, then use the process detailed above
3 Select SLPD and click on "Stop" and then click "Ok"
4 Select " Edit Startup Policy" and select "Start and stop manually". Click Ok
5 Reverse the steps above to re-enable the service