self-define client IP address range #83

Closed
opened 2025-11-20 05:06:04 -05:00 by saavagebueno · 12 comments
Owner

Originally created by @wellsgz on GitHub (Nov 23, 2021).

It seems that with the older version, client local ip address can be defined by --wgLocalAddr flag, yet it's no longer available in v0.3.

Also I couldn't find a field to set ip address range on server-side in management.json.

Is there any way to define client IP address range?

Originally created by @wellsgz on GitHub (Nov 23, 2021). It seems that with the older version, client local ip address can be defined by --wgLocalAddr flag, yet it's no longer available in v0.3. Also I couldn't find a field to set ip address range on server-side in management.json. Is there any way to define client IP address range?
saavagebueno added the enhancementfeature-request labels 2025-11-20 05:06:04 -05:00
Author
Owner

@wellsgz commented on GitHub (Nov 23, 2021):

Just found that I can update the setting by touching store.json in management volume, while a more elegant should be preferable...

@wellsgz commented on GitHub (Nov 23, 2021): Just found that I can update the setting by touching store.json in management volume, while a more elegant should be preferable...
Author
Owner

@braginini commented on GitHub (Nov 23, 2021):

Hey @wellsgz and thank you for the question.
We didn't plan to make it possible to update the address range.
Might be something to plan for the future.

What is your use case? Why exactly do you want to manage this part?

@braginini commented on GitHub (Nov 23, 2021): Hey @wellsgz and thank you for the question. We didn't plan to make it possible to update the address range. Might be something to plan for the future. What is your use case? Why exactly do you want to manage this part?
Author
Owner

@wellsgz commented on GitHub (Nov 23, 2021):

Hey @wellsgz and thank you for the question. We didn't plan to make it possible to update the address range. Might be something to plan for the future.

What is your use case? Why exactly do you want to manage this part?

I happened to be testing wiretrustee and tailscale on the same machine, and tailscale automated iptables rules drop the wiretrustee traffic, so I was looking for a workaround.

Other than that, I don't have an actual use case now, yet I think it's not a bad idea to give advanced users freedom of choice, given hacking the store.json way seems to work seamlessly with my DIY management node.

@wellsgz commented on GitHub (Nov 23, 2021): > Hey @wellsgz and thank you for the question. We didn't plan to make it possible to update the address range. Might be something to plan for the future. > > What is your use case? Why exactly do you want to manage this part? I happened to be testing wiretrustee and tailscale on the same machine, and tailscale automated iptables rules drop the wiretrustee traffic, so I was looking for a workaround. Other than that, I don't have an actual use case now, yet I think it's not a bad idea to give advanced users freedom of choice, given hacking the store.json way seems to work seamlessly with my DIY management node.
Author
Owner

@braginini commented on GitHub (Nov 25, 2021):

We will think about it.
Maybe on the first run, we could have this as a 1st configuration step.

Can't promise that we will implement it in the nearest future.

@braginini commented on GitHub (Nov 25, 2021): We will think about it. Maybe on the first run, we could have this as a 1st configuration step. Can't promise that we will implement it in the nearest future.
Author
Owner

@timwsuqld commented on GitHub (Oct 10, 2022):

I too would like to be able to configure the subnet used for client IPs. In a controlled environment we can choose a network range that we know won't conflict with other ranges, but can still fit into our schema. I understand the reason for choosing the CGNAT range, it would be nice to be able to change it.

@timwsuqld commented on GitHub (Oct 10, 2022): I too would like to be able to configure the subnet used for client IPs. In a controlled environment we can choose a network range that we know won't conflict with other ranges, but can still fit into our schema. I understand the reason for choosing the CGNAT range, it would be nice to be able to change it.
Author
Owner

@graphixillusion commented on GitHub (Nov 27, 2022):

Yep, totally agreed, it would be great to have this feature implemented.

@graphixillusion commented on GitHub (Nov 27, 2022): Yep, totally agreed, it would be great to have this feature implemented.
Author
Owner

@MohammedNoureldin commented on GitHub (Apr 5, 2023):

I too would like to be able to configure the subnet used for client IPs. In a controlled environment we can choose a network range that we know won't conflict with other ranges, but can still fit into our schema. I understand the reason for choosing the CGNAT range, it would be nice to be able to change it.

I am curious, could you tell why they chose CGNAT?

Is there any news or plan regarding this? I have the same situation where I want to implement this but it may collide with the network I can't manage. Thanks for your huge effort!

@MohammedNoureldin commented on GitHub (Apr 5, 2023): > I too would like to be able to configure the subnet used for client IPs. In a controlled environment we can choose a network range that we know won't conflict with other ranges, but can still fit into our schema. I understand the reason for choosing the CGNAT range, it would be nice to be able to change it. I am curious, could you tell why they chose CGNAT? Is there any news or plan regarding this? I have the same situation where I want to implement this but it may collide with the network I can't manage. Thanks for your huge effort!
Author
Owner

@yanghanlin commented on GitHub (Mar 6, 2024):

Looking forward to this feature.

@yanghanlin commented on GitHub (Mar 6, 2024): Looking forward to this feature.
Author
Owner

@karlitos-ozo commented on GitHub (May 17, 2024):

Just had the same issue while testing and comparing with tailscale. all machines had tailscale installed and set up. Wanted to test netbird with selfhosted relay as all of my devices are behind hard NAT(all devices get internet from mobile operators). But can't unless I disable tailscale.

would be great if there was a simple way to change this without going in to the database(I hope that will work) but the current fix isn't user friendly at all although the fix seems simple 2 input form somewhere in Settings (of course there are possible issues that may be caused when changing IP addresses of devices, like DNS cache, but for tat reason this may live in danger zone)
https://github.com/netbirdio/netbird/issues/1633#issuecomment-2106228602

that being said so far I'm happy with netbird.

@karlitos-ozo commented on GitHub (May 17, 2024): Just had the same issue while testing and comparing with tailscale. all machines had tailscale installed and set up. Wanted to test netbird with selfhosted relay as all of my devices are behind hard NAT(all devices get internet from mobile operators). But can't unless I disable tailscale. would be great if there was a simple way to change this without going in to the database(I hope that will work) but the current fix isn't user friendly at all although the fix seems simple 2 input form somewhere in Settings (of course there are possible issues that may be caused when changing IP addresses of devices, like DNS cache, but for tat reason this may live in danger zone) https://github.com/netbirdio/netbird/issues/1633#issuecomment-2106228602 that being said so far I'm happy with netbird.
Author
Owner

@pernetz commented on GitHub (Dec 10, 2024):

Up vote, that feature would be awesome :)

@pernetz commented on GitHub (Dec 10, 2024): Up vote, that feature would be awesome :)
Author
Owner

@adilinden commented on GitHub (Feb 20, 2025):

I need to access devices that use the CGNAT space for IP addressing. In order to use Netbird in this scenario, I would need to be able to define one or more pool of addresses that Netbird can allocate IP addresses from. Otherwise there may be overlap between Netbird assigned IP addresses and network routes needed for remote access to devices.

@adilinden commented on GitHub (Feb 20, 2025): I need to access devices that use the CGNAT space for IP addressing. In order to use Netbird in this scenario, I would need to be able to define one or more pool of addresses that Netbird can allocate IP addresses from. Otherwise there may be overlap between Netbird assigned IP addresses and network routes needed for remote access to devices.
Author
Owner

@nazarewk commented on GitHub (Aug 6, 2025):

implemented by https://github.com/netbirdio/netbird/pull/4177
released at https://github.com/netbirdio/netbird/releases/tag/v0.53.0

@nazarewk commented on GitHub (Aug 6, 2025): implemented by https://github.com/netbirdio/netbird/pull/4177 released at https://github.com/netbirdio/netbird/releases/tag/v0.53.0
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: SVI/netbird#83