Skip to content
Snippets Groups Projects
site.conf 6.11 KiB
Newer Older
  • Learn to ignore specific revisions
  • Matthias Schiffer's avatar
    Matthias Schiffer committed
    -- This is an example site configuration for Gluon v2017.1+
    
    --
    -- Take a look at the documentation located at
    -- http://gluon.readthedocs.org/ for details.
    --
    -- This configuration will not work as it. You're required to make
    -- community specific changes to it!
    
    Nils Schneider's avatar
    Nils Schneider committed
    {
    
      -- Used for generated hostnames, e.g. freifunk-abcdef123456. (optional)
      -- hostname_prefix = 'freifunk-',
    
    
      -- Name of the community.
    
      site_name = 'Freifunk Alpha Centauri',
    
    
      -- Shorthand of the community.
    
      site_code = 'ffxx',
    
      -- 32 bytes of random data, encoded in hexacimal
      -- Must be the same of all nodes in one mesh domain
      -- Can be generated using: echo $(hexdump -n 32 -e '1/1 "%02x"' </dev/urandom)
      site_seed = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
    
    
      -- Prefixes used within the mesh.
      -- prefix6 is required, prefix4 can be omitted if next_node.ip4
      -- is not set.
    
      prefix4 = '10.xxx.0.0/20',
      prefix6 = 'fdxx:xxxx:xxxx::/64',
    
    
      -- Timezone of your community.
    
      -- See http://wiki.openwrt.org/doc/uci/system#time_zones
    
      timezone = 'CET-1CEST,M3.5.0,M10.5.0/3',
    
      -- List of NTP servers in your community.
      -- Must be reachable using IPv6!
    
      ntp_servers = {'1.ntp.services.ffxx'},
    
    
      -- Wireless regulatory domain of your community.
      regdom = 'DE',
    
    
    Nils Schneider's avatar
    Nils Schneider committed
      -- Wireless configuration for 2.4 GHz interfaces.
    
      wifi24 = {
        -- Wireless channel.
        channel = 1,
    
    
        -- List of supported wifi rates (optional)
        -- Example removes 802.11b compatibility for better performance
        supported_rates = {6000, 9000, 12000, 18000, 24000, 36000, 48000, 54000},
    
        -- List of basic wifi rates (optional, required if supported_rates is set)
        -- Example removes 802.11b compatibility for better performance
        basic_rate = {6000, 9000, 18000, 36000, 54000},
    
    
        -- ESSID used for client network.
        ap = {
    
          ssid = 'alpha-centauri.freifunk.net',
    
          -- disabled = true, (optional)
        },
    
          id = 'ueH3uXjdp', -- usually you don't want users to connect to this mesh-SSID, so use a cryptic id that no one will accidentally mistake for the client WiFi
    
          mcast_rate = 12000,
          -- disabled = true, (optional)
        },
    
      },
    
      -- Wireless configuration for 5 GHz interfaces.
      -- This should be equal to the 2.4 GHz variant, except
    
      wifi5 = {
        channel = 44,
    
          ssid = 'alpha-centauri.freifunk.net',
    
          -- Adjust these values!
          id = 'ueH3uXjdp',
    
      },
    
      -- The next node feature allows clients to always reach the node it is
      -- connected to using a known IP address.
      next_node = {
        -- anycast IPs of all nodes
    
        ip4 = '10.xxx.0.xxx',
        ip6 = 'fdxx:xxxx:xxxx::xxxx',
    
      -- Options specific to routing protocols (optional)
      -- mesh = {
        -- Options specific to the batman-adv routing protocol (optional)
        -- batman_adv = {
          -- Gateway selection class (optional)
          -- The default class 20 is based on the link quality (TQ) only,
          -- class 1 is calculated from both the TQ and the announced bandwidth
          -- gw_sel_class = 1,
        -- },
      -- },
    
    
          -- Refer to http://fastd.readthedocs.org/en/latest/ to better understand
          -- what these options do.
    
    
          -- List of crypto-methods to use.
          methods = {'salsa2012+umac'},
          -- configurable = true,
          -- syslog_level = 'warn',
    
          groups = {
            backbone = {
              -- Limit number of connected peers to reduce bandwidth.
              limit = 1,
    
              -- List of peers.
              peers = {
                peer1 = {
                  key = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
    
                  -- This is a list, so you might add multiple entries.
                  remotes = {'ipv4 "xxx.somehost.invalid" port xxxxxx'},
                },
                peer2 = {
                  key = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
                  -- You can also omit the ipv4 to allow both connection via ipv4 and ipv6
                  remotes = {'"xxx.somehost2.invalid" port xxxxx'},
                },
    
              -- Optional: nested peer groups
              -- groups = {
              --   backbone_sub = {
              --     ...
              --   },
              --   ...
              -- },
            },
            -- Optional: additional peer groups, possibly with other limits
            -- backbone2 = {
    
    
        bandwidth_limit = {
          -- The bandwidth limit can be enabled by default here.
          enabled = false,
    
          -- Default upload limit (kbit/s).
          egress = 200,
    
          -- Default download limit (kbit/s).
          ingress = 3000,
        },
    
      },
    
      autoupdater = {
        -- Default branch. Don't forget to set GLUON_BRANCH when building!
        branch = 'stable',
    
        -- List of branches. You may define multiple branches.
        branches = {
          stable = {
            name = 'stable',
    
            -- List of mirrors to fetch images from. IPv6 required!
            mirrors = {'http://1.updates.services.ffhl/stable/sysupgrade'},
    
            -- Number of good signatures required.
            -- Have multiple maintainers sign your build and only
            -- accept it when a sufficient number of them have
            -- signed it.
            good_signatures = 2,
    
            -- List of public keys of maintainers.
            pubkeys = {
    
                    'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', -- Alice
                    'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', -- Bob
                    'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', -- Mary
    
      --     'node',
      --     'test',
      --     'backbone',
      --     'service',
    
      -- Skip setup mode (config mode) on first boot
      -- setup_mode = {
      --  skip = true,
      -- },
    
        -- Show/hide the altitude field
        -- geo_location = {
          -- show_altitude = false,
        -- },
        -- define if the contact field is obligatory (optional)
        -- owner = {
          -- obligatory = true
        -- },