[SOLVED] PROXMOX/KVM mit zusätzlicher IP und Subnet->Ping aber kein Internet/ssh


  • [SOLVED]
      Ursache des Fehlers waren die VIRTIO Netzwerkarten Treiber!

    Ich hatte die VIRTIO Treiber in pfSense i386 für die Netzwerkkarten enabled und dann in Proxmox 3.1 verwendet,
      was offensichtlich den Fehler verursacht hat.

    virtio -> vtnet0, vtnet1, vtnet2
      statt
      e1000 -> em0, em1, em2

    Einfach in Proxmox auf e1000 wechseln und beim Start der pfSense die Interfaces neu zuordnen.

    Die anderen Hardware-Virtualisierungen funktionieren:
      https://doc.pfsense.org/index.php/VirtIO_Driver_Support

    Das unten beschriebene Setup funktioniert perfekt.
    [/SOLVED]

    Hallo Netzwerk und pfSense Profis,

    ich brauche Euere Hilfe, bin mit meinem Latein am Ende!
    Ich bin kein Netzwerk Profi, sondern mache diese Netzwerk-Spezialitäten wenn sie anfallen und aus Interesse.

    Ich habe eine Profmox/pfSense Konfiguration bei Hetzner mit dieser Anleitung aufgebaut:
    http://www.hetzner-doku.tiahost.de/index.php?title=Zusammenfassung#Firewall_-_pfSense

    Funktionieren soll es auch mit Proxmox VE 3.1 statt mit ESXi (da will ich ja weg von) als Hypervisor:
    http://forum.hetzner.de/wbb2/thread.php?threadid=20403

    Ich arbeite derzeit schon auf einem anderen Server mit pfSense (ESXi),
    allerdings nur mit WAN/LAN zur Absicherung des internen Netzwerks.
    Die zusatz-IPs/VMs müssen sich je selbst absichern.
    Beim neuen Server will ich eben auch diese Aufgabe von pfSense übernehmen lassen.

    ABER es hakt noch, seht bitte selbst…

    Grob:
    Tracerout/ping gehen von innen und aussen mit sehr guten Zeiten.
    Datenübertrageung/Dienste wie Internet,ssh funktionieren in beiden Richtungen NICHT.
    Die DNS Auflösung geht aber, das sieht dann, wenn ich von innen apt-get aufrufe so aus:

    … bleibt bei 0% hängen.

    Gleicher Effekt bei zB WinScp von aussen, er findet den host, bleibt bei "connecting to host" hängen.

    Anbei meine Proxmox/KVM Architektur:

    WAN / Internet
                :
                : Hetzner Network
            LAN : x.y.48.192/27             
      routed LAN : x.y.73.16/29 auf Hetzner zusatz IP x.y.48.220
                :
    .–----------+---------------------------------------------------------------.
    |            |              "Proxmox/KVM Host" IP x.y.48.201                |
    |  .---------+-------.                                                      |
    |  | vmbr0 - vSwitch |                                                      |
    |  '---------+-------'                                                      |
    |            |                                                              |
    |        LAN | x.y.48.192/27                                                |
    | routed LAN | x.y.73.16/29 over x.y.48.220                                  |
    |            |                                                              |
    |      .-----+---------------------------------------.                      |
    |      |  WAN IP                                    |                      |
    |      |  x.y.48.220 (incl. Hetzner MAC)            |                      |
    |      |                                            |                      |
    |      |                                            |                      |
    |      |  VM pfSense - i386 virtIO                  |                      |
    |      | (x64 hat probleme mit KVM)                  |                      |
    |      |                                            |                      |
    |      |  SUBNET IP                INTRANET IP      |                      |
    |      |  x.y.73.17/29            192.168.2.1/24    |                      |
    |      '-----+----------------------------+----------'                      |
    |            |                            |                                  |
    |        LAN | x.y.73.16/29          LAN | 192.168.2.0/24                  |
    |            |                            |                                  |
    |  .---------+-------.          .---------+-------.                          |
    |  | vmbr1 - vSwitch |          | vmbr2 - vSwitch |                          |
    |  '---------+-------'          '---------+-------'                          |
    |            |                            |                                  |
    |      .-----+-------.              .-----|---------.                        |
    |      |            :              |              :                        |
    |      |      (Clients/Servers)    :      (internal Clients/Server VMs)    |
    |      |                                                                    |
    |  .---+---.                                                                |                     
    |  | VM 1  | x.y.73.18/29  <-- kann pingen/tracerout                        |
    |  '-------'                <-- kann von außen angepingt/traceroutet werden  |
    |                          <-- KEIN apt-get, wget, Internet-Browsing        |
    |                          <-- KEIN zB ssh von außen(winSCP)                |
    |                                                                            |
    '----------------------------------------------------------------------------'

    VM 1: (oder Ubuntu Server, Windows)
    In Xubuntu über DHCP erhalte ich zB folgende Netzkonfig:
    IP        x.y.73.21
    Broadcast  x.y.73.23
    Subnetz    255.255.255.248
    Gateway    x.y.73.17
    prim DNS  x.y.73.17
    Verhalten bei allen VM Betriebsystemen gleich:

    • Traceroute/Ping von außen möglich
    • Verbindung von außen über ssh geht nicht.
    • Ping, Traceroute von innen zu den Nachbarn geht.
    • Internet im Browser oder apt-get update, geht nicht.
    • apt-get findet die url der ersten Verbindung und versucht zu laden -> bleibt auf 0% hängen.

    Windows VM, selben Probleme, -> kein Internet, intern ssh (WinScp) zu Nachbarn geht.

    Fragen/Unsicherheiten:

    • Wie verhält es dich mit der Broadcasting Adresse (x.y.48.223) muss damit was tun?
    • DNS-Forwarder ist standardmäßig an,
      das Netz x.y.73.16/29 bzw die vergebenen IPs sollen ja nach außen sichtbar sein,
      nur eben über die pfSense abgesichert.
      Dann braucht es doch kein NAT, muss evtl. an NAT noch etwas gedreht werden?

    Netzwerkdaten von Hetzner:

    
    Proxmox 3.1 + zusätzliche IP + subnetz/29
    
    HauptserverIP:  x.y.48.201
      gateway x.y.48.193
      netzmaske 255.255.255.224
      broadcast x.y.48.223
    
    zusätzliche IP:  x.y.48.220 incl. separater MAC
      gateway x.y.48.193
      netzmaske 255.255.255.224
      broadcast x.y.48.23
    
    Subnetz: x.y.73.16 / 29
      gateway x.y.48.220 -> das Subnetz ist hierher geroutet
      netzmaske 255.255.255.248
      broadcast x.y.73.23
    
    

    Proxmox 3.1 Netzwerk Logik:

    
    Erste VM: 
      pfsense vmbr0=WAN
      vmbr1=SUBNET
      vmbr2=INTRANET
    
    Restlichen VM:
    vmbr1=SUBNET
    vmbr2=INTERANET
    
    

    Proxmox 3.1 /etc/interfaces:

    
    # forwarding in /etc/sysctl.conf -> OFF
    # The loopback network interface
    auto lo
    iface lo inet loopback
    
    # The primary network interface
    # auto eth0
    iface eth0 inet manual
    
    ################################
    #### The first vswitch interface
    # vswitch fuer den pfsense WAN "vtnet0" Adapter mit der Zusatz-IP "x.y.48.220" incl. Hetzner MAC Adresse
    # MAC Adresse in PROXMOX dem pfsense adapter vmbr0 vergeben
    # Auf die Zusatz-IP sollte das Subnet geroutet sein. 
    # Berechnung von Netzwerk-Geometrie: http://www.trinler.net/de/service/tools/ipcalc.html
    auto vmbr0
    iface vmbr0 inet static
        # Hetzner Haupt IP Adresse des Servers
        address x.y.48.201
        netmask 255.255.255.255
        # broadcast x.y.48.223
        network x.y.48.192
    
        # Hetzner Haupt Gateway Adresse des Servers
        gateway x.y.48.193
        pointopoint x.y.48.193
    
        # Virtual Bridge Einstellungen
        bridge_ports eth0
        bridge_stp off
        bridge_fd 0
    
    ################################
    #### The second vswitch interface
    # vswitch fuer den pfsense SUBNET "vtnet1" Adapter)
    auto vmbr1
    iface vmbr1 inet manual
        bridge_ports none
        bridge_stp off
        bridge_fd 0
    
    ################################
    #### The third vswitch interface
    # vswitch fuer den pfsense OPT1/LOCAL/LAN "vtnet2" Adapter)
    auto vmbr2
    iface vmbr2 inet manual
        bridge_ports none
        bridge_stp off
        bridge_fd 0
    
    ```   
    
    Konfiguration pfSense:
    

    nach dieser Anleitung:
    http://www.hetzner-doku.tiahost.de/index.php?title=Zusammenfassung#Firewall_-_pfSense

    1. ####
    System -> General Setup:
    127.0.0.1
    8.8.8.8
    208.67.220.220
    213.133.100.100

    2. ####
    System -> Routing:
    Gateways:
    Name        Interface    Gateway      Monitor IP    Description
    Hetzner_v6  WAN          fe80::1      fe80::1        Hetzner IPv6 Gateway
    Hetzner_v4  WAN          x.y.48.193    x.y.48.193    Hetzner IPv4 Gateway

    Routes:
    Network        Gateway      Interface    Description
    x.y.48.192/28  Hetzner_v4  WAN          Route zu Switchnachbarn, untere Hälfte
    x.y.48.208/28  Hetzner_v4  WAN          Route zu Switchnachbarn, obere Hälfte

    3. ####
    Interfaces:
    WAN IPv4: static        | IPv4 adress: x.y.48.220/29    | Gateway: x.y.48.193    | Block private und bogon
    WAN IPv6: static        | IPv6 adress: x❌x❌:2        | Gateway: fe80::1

    SUBNET IPv4: static    | IPv4 adress: x.y.73.17/29      | Gateway: None
    SUBNET IPv6: static    | IPv6 adress: x❌x❌1::2/80  | Gateway: None

    INTRANET IPv4: static  | IPv4 adress: 192.168.1.1/24    | Gateway: None
    INTRANET IPv6: static  | IPv6 adress: x❌x❌2::2/80  | Gateway: None

    4. ####
    Firewall -> Rules -> WAN:
    dir        ID    Proto    Source                  Port Dest  Port  Gateway  Queue  Schedule  Description   
    block      *      RFC 1918 networks                *    *    *      *        *      *        Block private networks   
    block      *      Reserved/not assigned by IANA    *    *    *      *        *      *        Block bogon networks   
    pass      IP4*  *                                *    *    *      *        none            TEST ALLE IPv4 AUF DURCHZUG

    Firewall -> Rules -> SUBNET:
    dir        ID    Proto    Source                  Port Dest  Port  Gateway  Queue  Schedule  Description   
    pass      IP4*  *                                *    *    *      *        none            TEST ALLE IPv4 AUF DURCHZUG

    5. ####
    Firewall -> Rules -> INTRANET:
    dir        ID    Proto    Source                  Port Dest  Port  Gateway  Queue  Schedule  Description   
    pass      *      ManAccsess                        *    *    MPorts *        none  *        pass management - hosts on ports   
    reject    *      *                                *    *    MPorts *        none  *        reject management - other on ports
    pass      IP4*  *                                *    *    *      *        none            TEST ALLE IPv4 AUF DURCHZUG

    6. ####
    Firewall -> NAT: (alles Voreinstellungen)
    Port Rorward:    KEINE EINTRÄGE
    1:1:            KEINE EINTRÄGE
    Outbound:        KEINE EINTRÄGE, Mode: Automatic outbound NAT rule generation
    NPt:            KEINE EINTRÄGE

    7. ####
    DNS forwarder:

    • Enable DNS forwarder
    • Register DHCP leases in DNS forwarder
    • Register DHCP static mappings in DNS forwarder
    • Resolve DHCP mappings first
      Interfaces: All

    8. ####
    DHCP server:
    WAN:        OFF
    SUBNET:      ON -> x.y.73.18      to  x.y.73.22
    INTRANET:    ON -> 192.168.1.100  to  192.168.1.200

    
    Die pfSense-Firewall x.y.48.220 kann ich auch von aussen einwandfrei erreichen, auch ssh etc.
    ifconfig pfSense:
    

    vtnet0: flags=8843 <up,broadcast,running,simplex,multicast>metric 0 mtu 1500
            options=c02bb <rxcsum,txcsum,vlan_mtu,vlan_hwtagging,jumbo_mtu,vlan_hwcsum,tso6,vlan_hwtso,linkstate>ether aa:bb:cc:dd:ee:aa
            inet x.y.48.220 netmask 0xffffffe0 broadcast x.y.48.223
            inet6 c🅱c:d:5723%vtnet0 prefixlen 64 scopeid 0x1
            inet6 a🅱c:d::2 prefixlen 64
            nd6 options=1 <performnud>media: Ethernet 1000baseT <full-duplex>status: active
    vtnet1: flags=8843 <up,broadcast,running,simplex,multicast>metric 0 mtu 1500
            options=c02bb <rxcsum,txcsum,vlan_mtu,vlan_hwtagging,jumbo_mtu,vlan_hwcsum,tso6,vlan_hwtso,linkstate>ether aa:bb:cc:dd:ee:bb
            inet x.y.73.17 netmask 0xfffffff8 broadcast x.y.73.23
            inet6 fe80::7c81:62ff:fe5a:170%vtnet1 prefixlen 64 scopeid 0x2
            inet6 a🅱c:d:1::2 prefixlen 80
            nd6 options=1 <performnud>media: Ethernet 1000baseT <full-duplex>status: active
    vtnet2: flags=8843 <up,broadcast,running,simplex,multicast>metric 0 mtu 1500
            options=c02bb <rxcsum,txcsum,vlan_mtu,vlan_hwtagging,jumbo_mtu,vlan_hwcsum,tso6,vlan_hwtso,linkstate>ether aa:bb:cc:dd:ee:cc
            inet 192.168.2.1 netmask 0xffffff00 broadcast 192.168.2.255
            inet6 b🅱c:d:6676%vtnet2 prefixlen 64 scopeid 0x3
            inet6 a🅱c:d:2::2 prefixlen 80
            nd6 options=1 <performnud>media: Ethernet 1000baseT <full-duplex>status: active
    lo0: flags=8049 <up,loopback,running,multicast>metric 0 mtu 16384
            options=3 <rxcsum,txcsum>inet 127.0.0.1 netmask 0xff000000
            inet6 ::1 prefixlen 128
            inet6 fe80::1%lo0 prefixlen 64 scopeid 0x4
            nd6 options=3 <performnud,accept_rtadv>pfsync0: flags=0<> metric 0 mtu 1460
            syncpeer: 224.0.0.240 maxupd: 128 syncok: 1
    enc0: flags=0<> metric 0 mtu 1536
    pflog0: flags=100 <promisc>metric 0 mtu 33192</promisc></performnud,accept_rtadv></rxcsum,txcsum></up,loopback,running,multicast></full-duplex></performnud></rxcsum,txcsum,vlan_mtu,vlan_hwtagging,jumbo_mtu,vlan_hwcsum,tso6,vlan_hwtso,linkstate></up,broadcast,running,simplex,multicast></full-duplex></performnud></rxcsum,txcsum,vlan_mtu,vlan_hwtagging,jumbo_mtu,vlan_hwcsum,tso6,vlan_hwtso,linkstate></up,broadcast,running,simplex,multicast></full-duplex></performnud></rxcsum,txcsum,vlan_mtu,vlan_hwtagging,jumbo_mtu,vlan_hwcsum,tso6,vlan_hwtso,linkstate></up,broadcast,running,simplex,multicast>

    
    Vielen Dank im Voraus.
    
    Helmut

  • gab es hilfe?
    ich suche für eine ähnliche Situation hilfe  :-\

  • LAYER 8 Moderator

    @vikozo: Siehe oben,  Helmut hatte seine Lösung in [SOLVED] Tags geschrieben.