WilliamLam.com

  • About
    • About
    • Privacy
  • VMware Cloud Foundation
  • VKS
  • Homelab
    • Hardware Options
    • Hardware Reviews
    • Lab Deployment Scripts
    • Nested Virtualization
    • Homelab Podcasts
  • VMware Nostalgia
  • Apple

Detecting duplicate VM MAC Address using vCenter Server Alarm

02.25.2015 by William Lam // 6 Comments

Having a duplicate VM MAC Address in your environment can lead to an extremely painful day of troubleshooting and it can also be tough to prevent depending on how and where you provision your VMs.

There are two cases that I can think of where a duplicate MAC Address can potentially occur:

  1. You manually assign a static MAC Address versus using dynamic assignment (includes VM import) and it conflicts with an already assigned MAC Address
  2. You migrate a VM from one vCenter Server to another and the destination vCenter Server has already assigned the MAC Address of the migrated VM

In both of these scenarios, when a duplicate MAC Address occurs, time is of the essence to quickly pin-point the source of the duplicated entry and quickly resolving the conflict. What would be nice is to be able to automatically detect that a MAC Address conflict has occurred and provide the necessary information of the offending VMs.

UPDATE (4/22) - Thanks to Petr, it turns out there is another MAC Address conflict event which I did not know about specifically for detecting duplicate entries for manually assigned MAC Addresses called "VM static MAC conflict". I definitely recommend creating an alarm for both Events for the vCenter Alarm.

While performing some research in my lab environment the other day, I accidentally stumbled onto this little tidbit in vCenter Server. It turns out there is an out of the box event called "VM Mac conflict" which can be triggered using a vCenter Server alarm when a duplicated MAC Address is detected for a VM. I was actually surprised that this was not one of the pre-created default alarms in vCenter Server as I can see this being extremely useful to have out of the box. In any case, it is simple enough to create a new vCenter Server Alarm and in the example below I called it "Dupe VM Mac Address".

duplicate-mac-address-alarm-0
To test our new alarm, I created a new VM called "VM1" which has been configured with static MAC Address that matches "VM2". Once the VM has been created, we can see that the alarm is immediately triggered and by clicking into the alarm details, it provides the details of the MAC Address and the offending VMs.

duplicate-mac-address-alarm-1
In my opinion this is an alarm that everyone should create in their environment to ensure that if this problem ever occurs, you can quickly get notified and resolve the problem. I have also reported this internally and asked if we can have this alarm created by default, so hopefully this will not be necessary in the near future 🙂

Categories // vSphere Tags // alarm, mac address, vSphere, vSphere 5.1, vSphere 5.5

Accessing the vSphere Web Client from a Linux desktop?

02.25.2015 by William Lam // 9 Comments

A common miss-conception about the vSphere Web Client is that it is not accessible from a Linux-based desktop. Contrary to popular belief, this is actually possible at least from a technical standpoint as alluded to in this VMware KB. A recent discussion about this topic had piqued my interest as my own understanding of whether the vSphere Web Client would even work on a Linux desktop is fuzzy at best since it is not a desktop OS I use on a regular basis.

Though this may still comes as a surprise to some folks, Adobe Flash is indeed a requirement to use the vSphere Web Client. There are actually two ways to satisfy this requirement using any modern Linux desktop distribution. In the example below, I am using the latest Ubuntu Desktop 14.04 distribution to demonstrate the two options.

The first option is the most "convenient" by simply using the latest version of Google Chrome browser which actually bundles the Pepper Flash Plugin (more details can be found here from Adobe). Here is the CLI commands to perform the installation of Google Chrome on Ubuntu, you acn easily do a search for the instructions for other Linux distributions.

sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
sudo apt-get update
sudo apt-get -y install google-chrome-stable

Here is a screenshot using Google Chrome connecting to a vSphere 6.0 environment as well as accessing the VMRC of a VM:

vsphere-web-client-linux-desktop-1
The second option is slightly less "convenient" since you need to install the Pepper Flash Plugin in addition to the browser that supports this plugin which is Chromium. Here is the CLI commands to perform the installation of Chromium on Ubuntu, you can easily do a search online for instructions for other Linux distributions.

sudo apt-get update
sudo apt-get -y install pepperflashplugin-nonfree
sudo apt-get -y install chromium-browser

Here is a screenshot using Chromium connecting to a vSphere 6.0 environment and you will also be able to access the VMRC of a VM:

vsphere-web-client-linux-desktop-0
This looks pretty good right? I mean you can login to the vSphere Web Client UI to perform basic operations and access the VM Console using the HTML5 based VMRC. Well, almost but there are a couple of caveats to be aware of which may not be obvious at first. In addition to the basic operations and VMRC access, there some other important capabilities the vSphere Web Client offers today:

  • Deploying OVF/OVA
  • Windows Session Authentication
  • Uploading files to a vSphere Datastore
  • Mounting ISO/Floppy Image
  • Connecting Local Devices (e.g. USB/CD-ROM)

The above capabilities are made available through what is known as the Client Integration Plug-in (CIP) which is something that is downloaded from the vSphere Web Client Server and installed locally on your desktop. A Linux CIP installer is currently not available today and the above functionality would not be available in the vSphere Web Client. Having said that, not all is lost and there are some workarounds. If you wish to deploy an OVF/OVA, you can still install OVFTool which is available on Linux and instead of using the UI to drive the deployment, it can be done through the CLI. For uploading files like an ISOs, you can use the vSphere API/CLI as shown here or SCP'ing directly to the ESXi host. Once the ISO is uploaded, you can then mount it to your VM from the vSphere Datastore.

Though this is far from a perfect solution for Linux-based desktop users, it does allow you to access the basic management capabilities of the vSphere Web Client. There is definitely room for improvement and this is an area that PM/Engineering is looking to enhance further in the future. There has also been a ton of general performance and usability improvements in the new vSphere 6.0 Web Client which will benefit all platforms and if you are interested to learn more about those, check out the blog post from the vSphere Web Client PM here.

Categories // vSphere 6.0 Tags // chrome, chromium, flash, linux, pepper flash plugin, vSphere 5.5, vsphere web client

Quick Tip - vSphere MOB is disabled by default in ESXi 6.0

02.24.2015 by William Lam // 9 Comments

Yesterday, I noticed an interesting error when trying to connect directly to the vSphere MOB on an ESXi 6.0 host. The following error message was displayed on the browser:

503 Service Unavailable (Failed to connect to endpoint: [N7Vmacore4Http20NamedPipeServiceSpecE:0x4bf02038] _serverNamespace = /mob _isRedirect = false _pipeName =/var/run/vmware/proxy-mob)

vsphere-6.0-mob-disable-0
This was the first time I had noticed this as I normally use the vSphere MOB for debugging purposes or exploring the vSphere API. The vSphere MOB is also a quick an handy way to unregister vSphere Plugins when connecting to vCenter Server.

I did some further investigation and it turns out that in vSphere 6.0, the vSphere MOB will be disabled by default on an ESXi 6.0 host. The reason for this is to provide security hardening out of the box for ESXi versus having an administrator harden after the fact. If you are familiar with the vSphere Security Hardening Guides, you will recall one of the guidelines is to disable the vSphere MOB on an ESXi host and with vSphere 6.0, this is now done automatically for you. This information will also be documented as part of the vSphere 6.0 documentation when it GAs.

If you still need to access the vSphere MOB on an ESXi how, this of course can be re-enabled from the default. There is also a new ESXi Advanced Setting called Config.HostAgent.plugins.solo.enableMob which easily controls whether the vSphere MOB is enabled or disabled as seen in the screenshot below.

vsphere-6.0-mob-disable-1
You have the option of using either the vSphere C# Client as shown in the screenshot above or the vSphere Web Client to configure the ESXi Advanced Setting:

vsphere-6.0-mob-disable-3
You can also configure this property using the vim-cmd in the ESXi Shell.

Listing the ESXi Advanced Setting using vim-cmd:

vim-cmd hostsvc/advopt/view Config.HostAgent.plugins.solo.enableMob

vsphere-6.0-mob-disable-2
Configuring the ESXi Advanced Setting to true:

vim-cmd hostsvc/advopt/update Config.HostAgent.plugins.solo.enableMob bool true

If you prefer to automate this using PowerCLI or vSphere API, this can also be done. Below are two examples using the Get-VmHostAdvancedConfiguration and Set-VMHostAdvancedConfiguration PowerCLI cmdlets.

Listing the ESXi Advanced Setting using PowerCLI:

Get-VMHost 192.168.1.200 | Get-VmHostAdvancedConfiguration -Name Config.HostAgent.plugins.solo.enableMob | Format-List

vsphere-6.0-mob-disable-4.png
Configuring the ESXi Advanced Setting to true:

Get-VMHost 192.168.1.200 | Set-VMHostAdvancedConfiguration -Name Config.HostAgent.plugins.solo.enableMob  -Value True

If you rely on using the vSphere MOB on ESXi and would like this to be your default, I would recommend you update either your ESXi Kickstart or Host Profile to include this additional configuration so that you do not get like I did 🙂 If you only need to use the vSphere MOB on occasion or do not have a use for it at all, then leaving the default is sufficient.

Categories // Automation, ESXi, vSphere 6.0 Tags // ESXi, mob, vim-cmd, vSphere 6.0, vSphere API

  • « Previous Page
  • 1
  • …
  • 374
  • 375
  • 376
  • 377
  • 378
  • …
  • 567
  • Next Page »

Search

Thank Author

Author

William is Distinguished Platform Engineering Architect in the VMware Cloud Foundation (VCF) Division at Broadcom. His primary focus is helping customers and partners build, run and operate a modern Private Cloud using the VMware Cloud Foundation (VCF) platform.

Connect

  • Bluesky
  • Email
  • GitHub
  • LinkedIn
  • Mastodon
  • Reddit
  • RSS
  • Twitter
  • Vimeo

Recent

  • Ultimate Lab Resource for VCF 9.0 06/25/2025
  • VMware Cloud Foundation (VCF) on ASUS NUC 15 Pro (Cyber Canyon) 06/25/2025
  • VMware Cloud Foundation (VCF) on Minisforum MS-A2 06/25/2025
  • VCF 9.0 Offline Depot using Synology 06/25/2025
  • Deploying VCF 9.0 on a single ESXi host? 06/24/2025

Advertisment

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

Copyright WilliamLam.com © 2025

 

Loading Comments...