Files
weave/website/tasks/ipam/configuring-weave.md
Raj Chaudhuri e2db8a25bd Added documentation website content, and a workflow to publish it to GitHub Pages
* Copied, rearranged and modified the contents of the old site directory for Jekyll static site generator, into the website directory
* Added some Jekyll-specific things for looks, including:
  * _config.yaml, Gemfile.* and 404.html files
  * _data, _layouts and assets directories and their content
* Added .github/workflows/github-pages-publish.yml workflow
2024-03-18 20:37:53 +05:30

1.8 KiB

title, menu_order, search_type
title menu_order search_type
Allocating IPs in a Specific Range 10 Documentation

The default configurations for both Weave Net and Docker use Private Networks, whose addresses are never found on the public Internet, and subsequently reduces the chance of IP overlap. However, it could be that you or your hosting provider are using some of these private addresses in the same range, which will cause a clash.

If after weave launch, the following error message appears:

Network 10.32.0.0/12 overlaps with existing route 10.0.0.0/8 on host.
ERROR: Default --ipalloc-range 10.32.0.0/12 overlaps with existing route on host.
You must pick another range and set it on all hosts.

As the message indicates, the default range that Weave Net would like to use is 10.32.0.0/12 - a 12-bit prefix, where all addresses start with the bit pattern 000010100010, or in decimal everything from 10.32.0.0 through 10.47.255.255.

However, your host is using a route for 10.0.0.0/8, which overlaps, since the first 8 bits are the same. In this case, if you used the default network for an address like 10.32.5.6 the kernel would never be sure if this meant the Weave Net network of 10.32.0.0/12 or the hosting network of 10.0.0.0/8.

If you are sure the addresses you want are not in use, then explicitly setting the range with --ipalloc-range in the command-line arguments to weave launch on all hosts forces Weave Net to use that range, even though it overlaps. Otherwise, you can pick a different range, preferably another subset of the Private Networks. For example 172.30.0.0/16.

See Also

  • [IP Addresses, Routes and Networks]({{ '/concepts/ip-addresses' | relative_url }})