RFC or something for choosing private ethernet MAC addresses? - virtualization

for virtualization purposes I want to assign all my VM ethernet cards an individual static MAC-address. This way it is easier for me to manage DHCP.
Normally ESXi Server chooses an address with this prefix: 00:50:56
But I don't want to use this prefix to don't get problems with later/other auto generated MACs or later joining VMs.
The VMs are only connected via NAT to the Internet, so the MAC will stay private.
Is there a guideline which MAC to choose?
Something like a private MAC address space?
Or should I just choose a random one?

Lots of information here. Creating your own MAC addresses can lead to conflict, but if they are only private, it should not cause you too much issue. How to modify the MAC for your particular Virtualization technology is of course not addressed here.
Wikipedia MAC Address

Okay, I found out, that in newer versions of ESXi Server / VMWare dynamic assigned MAC addresses will start with 00:0c:29.
In older versions and when MACs are static assigned, they will start with 00:50:56. So it is secure to choose the 00:50:56 prefix when I can be sure not to use older and newer VMs at the same time.
http://communities.vmware.com/message/55378

Related

Virtual (fake) primary monitor in Windows 10?

I have a bunch of automated UI tests that currently require a physical monitor to run. Can I somehow create a virtual monitor in Windows 10 that functions like a real monitor to the OS? I want to run the UI tests in a remote cloud environment without screens.
I think I heard sometime that VR-development (Virtual Reality) have had similar problems in that VR also need a physical monitor attached (except the VR-headset) and that this was perhaps solved by Nvidia/Intel? with a fake monitor driver or similar? Or was it virtual desktops in VR? I can't find the source for any of this anymore...
The easiest way is to use the Spacedesk utility:
https://spacedesk.net/
Spacedesk server part is installed on your PC.
The client part (viewer) will also be required - any device on Android/Windows in same LAN segment.
Small hack:
You can also install Windows Client on Spacedesk server PC and manually assign client IP from another subnet. As a result, you will assume real Windows fake display )...

What is efficient way to transfer a large file from server to multiple clients?

I have a requirement to transfer/multicast a large file about >40g of file from a server to multiple clients at the same time and this will be done for only once. Is there any good protocol to do that in Linux? I tried using UFTP, but it didn't work.
UFTP should be a good tool for this situation. If the server and clients are on the same LAN, there shouldn't be any issue with them communicating. If there are one or more routers separating them, then you would either have to configure routers to allow multicast traffic to pass or you could use UFTP's proxy servers to create a bridge between different network segments.
You could use the excellent bittorrent protocol and make it private by using Bittorent Sync.
Go to Bittorrent Sync Web Site for details.
The main advantages I see are :
It's design to transport large files (if you have a network disruption it's not a problem)
It's free
It's cross plateform : Windows, Linux (i386, x64, ARM, PowerPC), FreeBSD, Mac, Android, IOS, and more ...
It's secure (you provide the encryption keys)
It's quite simple to configure

VPN Server for Mac (Without OS X Server)

Is there any way to set up my mini (osx-lion) to be a VPN server?
I searched this in google, and got two solution:
They are iVPN and VPN Server Configurator, but they are not free.
I would like to do this for free, is it possible? and I am not running OS X server. Also I am behind a router (so there is only one external IP address for 8 computers).
I want to use PPTP.
Is there any solution?
Thanks a lot.
Mac is unix, so you can use most of the linux vpn server, like pptpd

How to capture loopback traffic in Windows Server 2008

Setup:
I have client C connecting to server S
Both C and S are on the same machine
In C the server address is hardcoded to 127.0.0.1. Likewise, in S the client address is hardcoded to 127.0.0.1
Problem:
I want to be able to sniff the traffic between the client and the server.
Due to the configuration, I cannot move the client nor the server to different locations (the address are hardcoded)
Installing the loopback interface and using tools like Wireshark+WinPcap doesn't lead anywhere (was actually already known but was worth a try)
RawCap, suggested in another topic, doesn't work. IP 127.0.0.1 is listed, but does not record any traffic.
Using rinetd to route the traffic elsewhere, as suggested here doesn't work (cannot bind on 127.0.0.1)
Not interested in using a HTTP local proxy, such as Fiddler, because I'd like to capture also other protocols
Two commercial tools work, specifically CommView and Local Network Monitor, which means it must be possible to do that ;)
How can I do to capture the traffic?
Any pointer on functions I should use or documentation I should read?
Thanks!
Basically you need to write a TDI filter driver to achieve that... for some pointers see:
http://msdn.microsoft.com/en-us/library/windows/hardware/ff565685%28v=vs.85%29.aspx
http://msdn.microsoft.com/en-us/library/windows/hardware/ff563317%28v=VS.85%29.aspx
Another option is to write a WinSock LSP.
BEWARE
Since Windows 8 it is strongly encouraged to use WFP (Windows Filtering Platform) for this sort of thing...
Although it might be more cost-effective to just use/buy an existing solution - esp. if you are not a very experienced driver developer...
Use RawCap, which can solve your concerns, see this

How can I tell if I'm running in a VMWARE virtual machine (from linux)?

I have a VMWARE ESX server. I have Redhat VMs running on that server. I need a way of programatically testing if I'm running in a VM. Ideally, I'd like to know how to do this from Perl.
See the answer to "Detect virtualized OS from an application?".
You shouldn't 100% depend on any method, as they are undocumented features/bugs - they work on some host OSes and some virtualization solutions, but there is no guarantee that they will continue working; indeed, the whole point of virtualization is to be as undistinguishable from real metal as possible. With this in mind, the blue pill red pill (which is mentioned in the accepted answer to this similar question) seems to work ... for now.
VMWare has a couple of SDK's, including an SDK for Perl.
I think (depending on the version of esx) you can inspect at the MAC address of the NIC. VMs running in VMWare NIC will have a manufacturer string assigned to VMWare, no the physical NIC MAC. (We were trying to spoof the MAC to VM a license server and newer versions won't let you do it.) Also, this won't guarantee you aren't running on a physical box with a NIC spoofed to look like VMWare, but that would be an odd thing to do in most circumstances anyway.
Run the following command:
lspci | grep VMware
It should show something like this:
00:0f.0 VGA compatible controller: VMware SVGA II Adapter
00:11.0 PCI bridge: VMware PCI bridge (rev 02)
00:15.0 PCI bridge: VMware PCI Express Root Port (rev 01)