Hi

Stock nginx built into Synology DSM won’t cut it, so I decided to install Nginx Proxy Manager. Before doing so, I created a macvlan and assigned the NPM container to use the assigned IP. Once install is finished, and I try to launch NPM, it fails to load. I tried the same install without macvlan, and it works and loads just fine. I have installed many other containers on macvlan, so I know what I am doing and have the knowledge and experience, but I have never run into this before where there seems to be a conflict I am not aware of.

Help? Anyone?

  • isleepbad@alien.topB
    link
    fedilink
    English
    arrow-up
    0
    ·
    11 months ago

    I was actually referring to ‘sudo ip route add 192.168.2.200/29 dev macvlan0’ for #3

    That is the MACVLANs subnet. That’s basically carving a small subnet out of your LAN that your virtual LAN will sit on. See the preparation section of the original post.

    And yes, all proxying goes to the aux IP.

    • Illuminated_Humanoid@alien.topOPB
      link
      fedilink
      English
      arrow-up
      0
      ·
      11 months ago

      Looking at your example. Your original settings are:

      docker network create -d macvlan \
      -o parent=eth0 \
      --subnet=192.168.2.0/24 \
      --gateway=192.168.2.1 \
      --ip-range 192.168.2.200/27 \
      --aux-address=“host=192.168.2.201” \
      dockervlan

      Why did you use 192.168.2.200/29 for your route? This is the last part I dont quite understand. How does it play into the settings you chose above?

      My setup is ip range 192.168.87.96/30 which is ip range 192.168.87.96 to 192.168.87.99 . I chose 192.168.87.99 as my auxillary and my Nginx was automatically given IP 192.168.87.96 . Now my question is how do I go about knowing what to use for route? I blindly first tried 192.168.87.98 from some bad info ChatGPT gave me and then I changed the route to the exact same CIDR notation I use for my IP range which is 192.168.87.96/30 and that seemed to work. Im asking because although it works I have zero clue why it works. My brain doesnt understand this final part.

      🙏🏼

      • isleepbad@alien.topB
        link
        fedilink
        English
        arrow-up
        0
        ·
        11 months ago

        Why did you use 192.168.2.200/29 for your route? This is the last part I dont quite understand. How does it play into the settings you chose above?

        I made a typo here and it should be --ip-range 192.168.2.200/29

        As I mentioned above you are creating a virtual LAN and as such you need to carve out your own subnet.

        My setup is ip range 192.168.87.96/30 which is ip range 192.168.87.96 to 192.168.87.99 . I chose 192.168.87.99 as my auxillary and my Nginx was automatically given IP 192.168.87.96 . Now my question is how do I go about knowing what to use for route?

        What do you mean what to use for route? Given what you said your command should look like:

        docker network create -d macvlan \
        -o parent=eth0 \
        --subnet=192.168.87.0/24 \
        --gateway=192.168.87.1 \ #this is your router's address
        --ip-range 192.168.87.96/30 \
        --aux-address="host=192.168.87.99" \
        dockervlan
        

        So that command is saying: I have an entire LAN that lives on the subnet 192.168.87.0/24. My router (i.e. gateway) has the IP address 192.168.87.1. I have a virtual network (macvlan) that has its own subnet that has the range 192.168.87.96/30.

        So now you need to create the virtual subnet (macvlan) using the command

        sudo ip route add 192.168.87.96/30 dev macvlan0
        

        If you use any other subnet it wouldn’t make any sense. How else would you get the same address space you described in the ip-range option?