I have not seen a stackoverflow exception for a long time. Today I happened to bump into one in random test code. I will explain how it happened. What the code is used for and why it was written this way are not interesting to me and are not in the scope of this post.
public class ChildClass : BaseClass
protected override void Dispose(bool disposing)
public class BaseClass
public void Dispose()
protected virtual void Dispose(bool disposing)
As you can see the stackoverflow exception will happen as the below
What is a NIC? It is the network adaptor on your machine. MAC address is the physical address of the adaptor. You can consider it as fixed on your machine for this discussion. However the NIC you get on a VM in cloud is a virtualized one. If you delete a VM and create a new one you will probably get a new MAC address. Why do we need a persistent MAC address? Many licensed software rely on MAC for the licenses. If you want to move licenses from one VM to another persistent MAC address becomes very useful.
It looks like a small feature. Let’s look at a few major cloud provides to see how they deal with this.
It is not available yet. According to the post it is already planned.
It is already supported. The below statement is from the official AWS documentation.
The interface maintains its private IP addresses, Elastic IP addresses, and MAC address.
When did AWS start supporting this? I have no idea. From this post it was not supported yet in 3/2011 but it was supported in 2/2012. https://forums.aws.amazon.com/thread.jspa?messageID=107448&
Google Cloud Platform (GCP)
Google does not seem to support persistent MAC address from the public official doc.
It does not seem to support persistent MAC address from the public official doc.