Difference between revisions of "Disable venet interface"

From OpenVZ Virtuozzo Containers Wiki
Jump to: navigation, search
Line 64: Line 64:
 
The start_net function should look like this:
 
The start_net function should look like this:
  
<code>start_net()</code>
+
<code>start_net()
<code>
 
 
{
 
{
 
         local mod
 
         local mod

Revision as of 13:51, 29 October 2009

If you have configure veth correctly and want to get rid of venet interface modify /etc/init.d/vz following this step:

1. /etc/init.d/vz stop before going further.

2. Comment line VZDEV=venet0 (~ line 53).

3. Replace line NET_MODULES="${VNET_MODULES} ${VETH_MODULES}" (~ line 67) with this block:

       ####################################
       # Patch for disable venet interface
       # Block 1
       # 2009-10-29 Michael Plourde
       ###################################
       NET_MODULES="${VETH_MODULES}"
       if [ -n "${VZDEV}" ]
       then
               NET_MODULES="${NET_MODULES} ${VNET_MODULES}"
       fi
       ####################################
       #  Patch for disable venet interface
       #  End Block 1
       #  2009-10-29 Michael Plourde
       ###################################

4. In the start_net() function (~ line 306) find those lines:

               __echo "Bringing up interface $VZDEV: "
               ip link set $VZDEV up
               print_result
               ip addr add 0.0.0.0/0 dev $VZDEV
               __echo "Configuring interface $VZDEV: "
               sysctl -q -w net.ipv4.conf.$VZDEV.send_redirects=0
               print_result
               if [ "${IPV6}" = "yes" ]; then
                       __echo "Configuring ipv6 $VZDEV: "
                       # Fix me: ip addres should be generated
                       ip -6 addr add fe80::1/128 dev $VZDEV
                       print_result
               fi

and add these block before:

       ####################################
       # Patch for disable venet interface
       # Block 2
       # 2009-10-29 Michael Plourde
       ###################################
       if [ -n "$VZDEV" ]
       then

and this one after:

       fi
       ####################################
       # Patch for disable venet interface
       # End Block 2
       # 2009-10-29 Michael Plourde
       ###################################

The start_net function should look like this:

start_net() {

       local mod
       # load all kernel modules needed for VE networking
       for mod in ${NET_MODULES}; do
               modprobe ${mod} 2>/dev/null
       done
       if ip addr list | grep -q "venet0:.*UP" 2>/dev/null; then
               return 0
       fi
       get_veinfo
       if [ -z "$VEINFO" ]; then
               return 0
       fi
       ####################################
       # Patch for disable venet interface
       # Block 2
       # 2009-10-29 Michael Plourde
       ###################################
       if [ -n "$VZDEV" ]
       then
               __echo "Bringing up interface $VZDEV: "
               ip link set $VZDEV up
               print_result
               ip addr add 0.0.0.0/0 dev $VZDEV
               __echo "Configuring interface $VZDEV: "
               sysctl -q -w net.ipv4.conf.$VZDEV.send_redirects=0
               print_result
               if [ "${IPV6}" = "yes" ]; then
                       __echo "Configuring ipv6 $VZDEV: "
                       # Fix me: ip addres should be generated
                       ip -6 addr add fe80::1/128 dev $VZDEV
                       print_result
               fi
       fi
       ####################################
       # Patch for disable venet interface
       # End Block 2
       # 2009-10-29 Michael Plourde
       ###################################

}

5. Modify the stop_net function (~ line 351) to look like this:

stop_net() {

       local mod
       ####################################
       # Patch for disable venet interface
       # Block 3
       # 2009-10-29 Michael Plourde
       ###################################
       if [ -n "$VZDEV" ]
       then
               if ip addr list | grep -q "venet0:.*UP" 2>/dev/null; then
                       __echo "Bringing down interface $VZDEV: "
                       ip link set $VZDEV down
                       print_result
               fi
       fi
       ####################################
       # Patch for disable venet interface
       # End Block 3
       # 2009-10-29 Michael Plourde
       ###################################
       for mod in ${NET_MODULES}; do
               /sbin/modprobe -r ${mod} > /dev/null 2>&1
       done

}

6. That's all. You can now start your VEs:/etc/init.d/vz start