Skip to main content

Hyper-V Integration

(2015-02-18)

Problem

Jessie not fully integrated with Hyper-V out of the box.

Solution

/usr/bin/hv_get_dhcp_info

#!/bin/bash

# This example script retrieves the DHCP state of a given interface.
# In the interest of keeping the KVP daemon code free of distro specific
# information; the kvp daemon code invokes this external script to gather
# DHCP setting for the specific interface.
#
# Input: Name of the interface
#
# Output: The script prints the string "Enabled" to stdout to indicate
#       that DHCP is enabled on the interface. If DHCP is not enabled,
#       the script prints the string "Disabled" to stdout.
#
# Each Distro is expected to implement this script in a distro specific
# fashion. For instance on Distros that ship with Network Manager enabled,
# this script can be based on the Network Manager APIs for retrieving DHCP
# information.

#if_file="/etc/sysconfig/network-scripts/ifcfg-"$1
if_file="/etc/network/interfaces"

dhcp=$(grep "$1 inet dhcp" $if_file 2>/dev/null)

if [ "$dhcp" != "" ];
then
echo "Enabled"
else
echo "Disabled"
fi

/usr/bin/hv_get_dns_info:

#!/bin/bash
# This example script parses /etc/resolv.conf to retrive DNS information.
# In the interest of keeping the KVP daemon code free of distro specific
# information; the kvp daemon code invokes this external script to gather
# DNS information.
# This script is expected to print the nameserver values to stdout.
# Each Distro is expected to implement this script in a distro specific
# fashion. For instance on Distros that ship with Network Manager enabled,
# this script can be based on the Network Manager APIs for retrieving DNS
# entries.

cat /etc/resolv.conf 2>/dev/null | awk '/^nameserver/ { print $2 }'

Then do this:

echo 'deb http://http.debian.net/debianjessie-backports main' > /etc/apt/sources.list.d/backports.list
apt-get update
apt-get install hyperv-daemons

Reboot, and you should be good to go.