Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save dendisuhubdy/3fed673e0b837f0cb09b22c633f3e043 to your computer and use it in GitHub Desktop.
Save dendisuhubdy/3fed673e0b837f0cb09b22c633f3e043 to your computer and use it in GitHub Desktop.

Revisions

  1. @donmccoy donmccoy revised this gist Feb 20, 2018. 1 changed file with 1 addition and 19 deletions.
    20 changes: 1 addition & 19 deletions ipv6_proxmox_online.net.md
    Original file line number Diff line number Diff line change
    @@ -160,23 +160,5 @@ iface vmbr0 inet6 static
    ```
    The system is trying to assign IPv6 but the pre-up phase hasn't been touched yet (timing problem), the pre-up line should be finished so the system can pull the IPv6 block from the router.

    The solution would be to explicitly assign the IPv6 address after the boot by adding it to /etc/rc.local before exit 0:


    ```
    #!/bin/sh -e
    #
    # rc.local
    #
    # This script is executed at the end of each multiuser runlevel.
    # Make sure that the script will "exit 0" on success or any other
    # value on error.
    #
    # In order to enable or disable this script just change the execution
    # bits.
    #
    # By default this script does nothing.
    ip -6 a a 2001:bc8:50ca:101::1/64 dev vmbr0
    exit 0
    ```
    Still Investigating the issue.
  2. @donmccoy donmccoy revised this gist Feb 19, 2018. 1 changed file with 73 additions and 6 deletions.
    79 changes: 73 additions & 6 deletions ipv6_proxmox_online.net.md
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,5 @@
    # Configuring IPv6 block from Online.net On Proxmox Host and Guests
    Following the documentation on online.net won't get IPv6 to work fully as they are missing some ipv6 forwards on sysctl.conf to make IPv6 works on Debian based systems, or Proxmox.
    Following the documentation on online.net would get IPv6 to work only in a simple system installation but won't get IPv6 to work with virtualization environment (Exp. Proxmox) as It's missing some IPv6 forwards and proxies on sysctl.conf.


    ## On Proxmox Host (Or Debian if single Debian Installation)
    @@ -106,10 +106,77 @@ iface vmbr0 inet6 static
    * Reboot the server, and your server should get IPv6 address now.


    ## On Proxmox VM and Containers
    ## IPv6 On Proxmox Container:

    * From Proxmox GUI, create new network device, use vmbr0 as bridge.
    * Input the desired IPv6 but not the one from host.
    * Input the IPv6 of the host as the gateway.
    * On Proxmox GUI, create new network device, use vmbr0 as bridge.
    * Enter the desired IPv6 from your IPv6 block but not the one that's taken from host (Exp. 2001:bc8:50ca:101::2/64)
    * Enter the IPv6 of the host as gateway (2001:bc8:50ca:101::1).
    * Enter DNS server, exp. Google Public DNS: 2001:4860:4860::8888 and 2001:4860:4860::8844

    After Rebooting the container it should have an IPv6 and connection to the internet.
    After Rebooting the container it should have an IPv6 connectivity and connection to the internet.


    ## IPv6 On Proxmox VM:

    * On Proxmox GUI, from Hardware windows edit the current IPv4 network device to IPv6 to it (only if it uses vmbr0 as Bridge, if it's on other bridge then create new network device).
    * Start the VM
    * Edit the interfaces file on the VM, /etc/network/interfaces
    * Add IPv6:
    ```
    iface ens18 inet6 static
    address 2001:bc8:50ca:101::3
    netmask 64
    ```
    * restart the networking ```service networking restart``` or reboot the VM.



    ## Known Problems:

    * The host loses IPv6 address after rebooting or after some time (an hour).
    checking the interface IPs:
    ```
    ip a show vmbr0
    ```
    If you notice that inet6 where our IPv6 is assigned is gone, then you have this problem, to fix the issue temporary, issue new IP:
    ```
    ip -6 a a 2001:bc8:50ca:101::1/64 dev vmbr0
    ```
    Now test the Connectivity:
    ```
    ping6 ipv6.google.com
    ```

    Note: that you need to do this everytime you restart the host.

    The reason for this problem, may be due to this line in /etc/network/interfaces:
    ```
    iface vmbr0 inet6 static
    address 2001:bc8:50ca:101::1
    netmask 64
    accept_ra 1
    pre-up dhclient -cf /etc/dhcp/dhclient6.conf -pf /run/dhclient6.vmbr0.pid -v -nw -6 -P vmbr0
    pre-down dhclient -x -pf /run/dhclient6.vmbr0.pid
    ```
    The system is trying to assign IPv6 but the pre-up phase hasn't been touched yet (timing problem), the pre-up line should be finished so the system can pull the IPv6 block from the router.

    The solution would be to explicitly assign the IPv6 address after the boot by adding it to /etc/rc.local before exit 0:


    ```
    #!/bin/sh -e
    #
    # rc.local
    #
    # This script is executed at the end of each multiuser runlevel.
    # Make sure that the script will "exit 0" on success or any other
    # value on error.
    #
    # In order to enable or disable this script just change the execution
    # bits.
    #
    # By default this script does nothing.
    ip -6 a a 2001:bc8:50ca:101::1/64 dev vmbr0
    exit 0
    ```
  3. @donmccoy donmccoy revised this gist Feb 18, 2018. 1 changed file with 13 additions and 2 deletions.
    15 changes: 13 additions & 2 deletions ipv6_proxmox_online.net.md
    Original file line number Diff line number Diff line change
    @@ -42,8 +42,8 @@ Edit the system variables file:
    ```
    Disable autoconf for ipv6 on interface vmbr0, enable forwards on default interface and all other interfaces, enable NDP proxy on default and all interfaces, as the following:
    ```
    net.ipv6.conf.vmbr0.autoconf=0
    net.ipv6.conf.vmbr0.accept_ra=2
    net.ipv6.conf.vmbr0.autoconf = 0
    net.ipv6.conf.vmbr0.accept_ra = 2
    net.ipv6.conf.default.forwarding = 1
    net.ipv6.conf.all.forwarding = 1
    @@ -102,3 +102,14 @@ iface vmbr0 inet6 static
    address 2001:bc8:50ca:101::1
    netmask 64
    ```

    * Reboot the server, and your server should get IPv6 address now.


    ## On Proxmox VM and Containers

    * From Proxmox GUI, create new network device, use vmbr0 as bridge.
    * Input the desired IPv6 but not the one from host.
    * Input the IPv6 of the host as the gateway.

    After Rebooting the container it should have an IPv6 and connection to the internet.
  4. @donmccoy donmccoy revised this gist Feb 18, 2018. 1 changed file with 52 additions and 6 deletions.
    58 changes: 52 additions & 6 deletions ipv6_proxmox_online.net.md
    Original file line number Diff line number Diff line change
    @@ -6,19 +6,64 @@ Following the documentation on online.net won't get IPv6 to work fully as they a

    ### Enable IPv6 on the System:

    * On the following file:
    * Change Module Options to Enable IPv6:

    In the following file:
    ```
    /etc/modprobe.d/local.conf
    ```
    enable IPv6:
    enable IPv6 by changing the 1 to 0:
    ```
    options ipv6 disable=0
    ```

    * Load IPv6 Kernel Module at the boot:
    Edit the following file:

    ```
    /etc/modules
    ```
    Add ipv6:
    ```
    ipv6
    ```

    * Reboot the server to load IPv6 Modules

    Now the system has IPv6 modules loaded and enabled, we need to configure and allow IPv6 forwarding.

    Note: You can skip this step if you have simple Debian installation without Virtualization.

    * Enable Forwarding by adding them into the system variables:

    Edit the system variables file:
    ```
    /etc/sysctl.conf
    ```
    Disable autoconf for ipv6 on interface vmbr0, enable forwards on default interface and all other interfaces, enable NDP proxy on default and all interfaces, as the following:
    ```
    net.ipv6.conf.vmbr0.autoconf=0
    net.ipv6.conf.vmbr0.accept_ra=2
    net.ipv6.conf.default.forwarding = 1
    net.ipv6.conf.all.forwarding = 1
    net.ipv6.conf.default.proxy_ndp = 1
    net.ipv6.conf.all.proxy_ndp = 1
    ```

    Read the new system variables, by executing the command:
    ```
    sysctl -p
    ```

    At this point we enabled IPv6 on the system by loading the required modules, and enabling forwarding and ndp proxy on the host, so that our guest machines can obtain IPv6 addresses from the host.


    ### Configuring the IPv6 Client
    We will use the default DHCP client to issue and get the IP Block from DUID of online.net console:
    Edit or create the following file if not existing:
    We will use the default DHCP client to issue and get the IP Block from the router using DUID given in online.net console.

    Edit or create the following file if not exists:

    ```
    /etc/dhcp/dhclient6.conf
    @@ -30,10 +75,11 @@ interface "vmbr0" {
    send dhcp6.client-id DUID;
    }
    ```
    Where eth0 represents the main interface, and DUID obtained from Online.net IPv6 Panel.
    Where vmbr0 represents the main interface, and DUID obtained from Online.net IPv6 Panel.


    ### Configuring Interfaces file to add IPv6 address and run the dhclient6

    ### Configuring Interfaces file to add IPv6

    Edit the interfaces file:
    ```
  5. @donmccoy donmccoy revised this gist Feb 18, 2018. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion ipv6_proxmox_online.net.md
    Original file line number Diff line number Diff line change
    @@ -6,7 +6,7 @@ Following the documentation on online.net won't get IPv6 to work fully as they a

    ### Enable IPv6 on the System:

    *On the following file:
    * On the following file:
    ```
    /etc/modprobe.d/local.conf
    ```
  6. @donmccoy donmccoy revised this gist Feb 18, 2018. 1 changed file with 23 additions and 2 deletions.
    25 changes: 23 additions & 2 deletions ipv6_proxmox_online.net.md
    Original file line number Diff line number Diff line change
    @@ -4,6 +4,18 @@ Following the documentation on online.net won't get IPv6 to work fully as they a

    ## On Proxmox Host (Or Debian if single Debian Installation)

    ### Enable IPv6 on the System:

    *On the following file:
    ```
    /etc/modprobe.d/local.conf
    ```
    enable IPv6:
    ```
    options ipv6 disable=0
    ```


    ### Configuring the IPv6 Client
    We will use the default DHCP client to issue and get the IP Block from DUID of online.net console:
    Edit or create the following file if not existing:
    @@ -21,7 +33,9 @@ interface "vmbr0" {
    Where eth0 represents the main interface, and DUID obtained from Online.net IPv6 Panel.


    Edit the interface file:
    ### Configuring Interfaces file to add IPv6

    Edit the interfaces file:
    ```
    /etc/network/interfaces
    ```
    @@ -34,4 +48,11 @@ iface vmbr0 inet6 static
    accept_ra 1
    pre-up dhclient -cf /etc/dhcp/dhclient6.conf -pf /run/dhclient6.vmbr0.pid -v -nw -6 -P vmbr0
    pre-down dhclient -x -pf /run/dhclient6.vmbr0.pid
    ```
    ```

    Note: YOUR-IPv6 is the created subnet from online.net IPv6 panel, for example:
    ```
    iface vmbr0 inet6 static
    address 2001:bc8:50ca:101::1
    netmask 64
    ```
  7. @donmccoy donmccoy revised this gist Feb 18, 2018. 1 changed file with 24 additions and 0 deletions.
    24 changes: 24 additions & 0 deletions ipv6_proxmox_online.net.md
    Original file line number Diff line number Diff line change
    @@ -11,3 +11,27 @@ Edit or create the following file if not existing:
    ```
    /etc/dhcp/dhclient6.conf
    ```
    Add the following lines:

    ```
    interface "vmbr0" {
    send dhcp6.client-id DUID;
    }
    ```
    Where eth0 represents the main interface, and DUID obtained from Online.net IPv6 Panel.


    Edit the interface file:
    ```
    /etc/network/interfaces
    ```

    And add the following lines:
    ```
    iface vmbr0 inet6 static
    address YOUR_IPv6
    netmask YOUR_SUBNET
    accept_ra 1
    pre-up dhclient -cf /etc/dhcp/dhclient6.conf -pf /run/dhclient6.vmbr0.pid -v -nw -6 -P vmbr0
    pre-down dhclient -x -pf /run/dhclient6.vmbr0.pid
    ```
  8. @donmccoy donmccoy revised this gist Feb 18, 2018. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion ipv6_proxmox_online.net.md
    Original file line number Diff line number Diff line change
    @@ -4,7 +4,7 @@ Following the documentation on online.net won't get IPv6 to work fully as they a

    ## On Proxmox Host (Or Debian if single Debian Installation)

    ### IPv6 Client
    ### Configuring the IPv6 Client
    We will use the default DHCP client to issue and get the IP Block from DUID of online.net console:
    Edit or create the following file if not existing:

  9. @donmccoy donmccoy revised this gist Feb 18, 2018. 1 changed file with 12 additions and 1 deletion.
    13 changes: 12 additions & 1 deletion ipv6_proxmox_online.net.md
    Original file line number Diff line number Diff line change
    @@ -1,2 +1,13 @@
    # Configuring IPv6 on Host:
    # Configuring IPv6 block from Online.net On Proxmox Host and Guests
    Following the documentation on online.net won't get IPv6 to work fully as they are missing some ipv6 forwards on sysctl.conf to make IPv6 works on Debian based systems, or Proxmox.


    ## On Proxmox Host (Or Debian if single Debian Installation)

    ### IPv6 Client
    We will use the default DHCP client to issue and get the IP Block from DUID of online.net console:
    Edit or create the following file if not existing:

    ```
    /etc/dhcp/dhclient6.conf
    ```
  10. @donmccoy donmccoy renamed this gist Feb 18, 2018. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  11. @donmccoy donmccoy renamed this gist Feb 18, 2018. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  12. @donmccoy donmccoy created this gist Feb 18, 2018.
    2 changes: 2 additions & 0 deletions gistfile1.txt
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,2 @@
    # Configuring IPv6 on Host: