Possible Bug in DA - Global IP not assigned to resellers automatically

Meiji

Verified User
Joined
Jul 2, 2019
Messages
72
It seems there is no option to assign the global IP to a reseller automatically.

When a reseller orders via WHMCS either the reseller account creation fails or the reseller is created without any IP.


In WHMCS, when you set the Reseller IP to sharedreseller, automatic provisioning after payment will fail.

If you try to create the account manually from WHMCS Client Profile, WHMCS reports the account was created but it does not create the account.


In WHMCS, when you set the Reseller IP to shared, automatic provisioning after payment will NOT fail.

If you try to create the account manually from WHMCS Client Profile, WHMCS creates the account.

But in both cases, the reseller was created without any IP. Because of this, the reseller cannot create any client accounts.

You have to manually assign the global IP to the reseller and then they can create client accounts.

The whole process needs to be automatic.

That is, the global IP needs to be assigned to the reseller automatically during account creation.
 
Same issue with the Blesta module, seems like the modules need an update as DirectAdmin added new feature of global IP.
 
Same issue with the Blesta module, seems like the modules need an update as DirectAdmin added new feature of global IP.

Not sure if the modules need any upgrade.

If you try to create a reseller account from DirectAdmin, it will not have the global IP. You need to manually assign the global IP to the reseller. It seems this is the main cause of the issue.

If there was a setting in DA that would place new resellers on the global IP automatically, the WHMCS/Blesta modules would not need any modification.
 
Hi guys,

When creating a Reseller with the ip=sharedreseller option, it assumes you've got 1+ IPs set in the Reseller Package, and DA will only snag "free" IPs from the list for this value.

I've confirmed there is no build-in way to automatically add a global IP to a Reseller upon their creation.
That being said, let's find a way :)
  1. A few options to pick from (open to discussion) would be a directadmin.conf setting:
    Code:
    auto_add_global_ip=<VALUE>
    where VALUE could be one of: 1:random, 2:random, etc, or 1.2.3.4, or 1.2.3.4,1.2.3.6
    where N:random would be N as the number of globals to add automatically.
    And the IP, or IP1:IP2 would be the list to pick from (this may be too complicated, or other ways of doing it in a similar concept

  2. Or... during the creation of said Reseller, in the "Account IP", include the globals there, or "globalreseller" which would be similar to sharedreseller, but only on global IPs.

  3. Packages could also have something like the da.conf options as well, overriding the da.conf if set (would do #1 first, #3 once #1 works)

  4. The "IPs" count in the packages could be set to use globals only, instead of free IPs.. or both free+globals (whichever found first), based on some da.conf or package setting.

Using #1 would allow globals to be assigned automatically without any other changes required, so #1 would be quickest to get going.
Either way, let us know your thoughts, we're happy to work with whatever is simplest for everyone.

John
 
I was just thinking about this. Before this changed, when a reseller was created, he automatically made use of the shared ip used also by admin and all customers when created.
It might be mentioned in one of the options, maybe option 2? I don't know. But isn't that the easiest way, when nothing is done, assign the shared ip to the reseller like it was done on the old DA versions?
 
Hi guys,

When creating a Reseller with the ip=sharedreseller option, it assumes you've got 1+ IPs set in the Reseller Package, and DA will only snag "free" IPs from the list for this value.

I've confirmed there is no build-in way to automatically add a global IP to a Reseller upon their creation.
That being said, let's find a way :)
  1. A few options to pick from (open to discussion) would be a directadmin.conf setting:
    Code:
    auto_add_global_ip=<VALUE>
    where VALUE could be one of: 1:random, 2:random, etc, or 1.2.3.4, or 1.2.3.4,1.2.3.6
    where N:random would be N as the number of globals to add automatically.
    And the IP, or IP1:IP2 would be the list to pick from (this may be too complicated, or other ways of doing it in a similar concept

  2. Or... during the creation of said Reseller, in the "Account IP", include the globals there, or "globalreseller" which would be similar to sharedreseller, but only on global IPs.

  3. Packages could also have something like the da.conf options as well, overriding the da.conf if set (would do #1 first, #3 once #1 works)

  4. The "IPs" count in the packages could be set to use globals only, instead of free IPs.. or both free+globals (whichever found first), based on some da.conf or package setting.

Using #1 would allow globals to be assigned automatically without any other changes required, so #1 would be quickest to get going.
Either way, let us know your thoughts, we're happy to work with whatever is simplest for everyone.

John

I am a big fan of simplicity as control panels are used by both skilled and novice system admins.

In that context, 1. makes the most sense. If you allow creating multiple global IPs, you could use auto_add_global_ip=1:1.2.3.4 to put any new reseller on the global IP 1.2.3.4.

If we need to use a different global IP, we can always change the IP in the settings.

Anything else is not needed at this time.
 
Hi guys,

When creating a Reseller with the ip=sharedreseller option, it assumes you've got 1+ IPs set in the Reseller Package, and DA will only snag "free" IPs from the list for this value.

I've confirmed there is no build-in way to automatically add a global IP to a Reseller upon their creation.
That being said, let's find a way :)
  1. A few options to pick from (open to discussion) would be a directadmin.conf setting:
    Code:
    auto_add_global_ip=<VALUE>
    where VALUE could be one of: 1:random, 2:random, etc, or 1.2.3.4, or 1.2.3.4,1.2.3.6
    where N:random would be N as the number of globals to add automatically.
    And the IP, or IP1:IP2 would be the list to pick from (this may be too complicated, or other ways of doing it in a similar concept

  2. Or... during the creation of said Reseller, in the "Account IP", include the globals there, or "globalreseller" which would be similar to sharedreseller, but only on global IPs.

  3. Packages could also have something like the da.conf options as well, overriding the da.conf if set (would do #1 first, #3 once #1 works)

  4. The "IPs" count in the packages could be set to use globals only, instead of free IPs.. or both free+globals (whichever found first), based on some da.conf or package setting.

Using #1 would allow globals to be assigned automatically without any other changes required, so #1 would be quickest to get going.
Either way, let us know your thoughts, we're happy to work with whatever is simplest for everyone.

John

Thanks for your reply. Yes, i think 1. would be fine. It is enough if a reseller has been assigned a Shared IP :)
Also, usually main user account of reseller is created with Main Server IP, will it also prevent that?
 
Thanks a lot for providing the option.

Is there any timeframe on when a stable version might be released?
 
Thanks a lot for providing the option.

Is there any timeframe on when a stable version might be released?
No ETA at this time, but we do want a release out before the end of the year, so a release candidate shouldn't be "too far" away.
 
No ETA at this time, but we do want a release out before the end of the year, so a release candidate shouldn't be "too far" away.

Thanks a lot for the information.

If it's that far, please also put the reseller user account on global IP when global IP is turned on.

The whole point of the global IP is to put accounts on an IP that is not the server IP and/or that can be shared amongst multiple resellers.

Reseller client accounts on the global Ip while the reseller's user account on another IP doesn't make much sense and actually goes against the point. The goal is to host all accounts of a reseller on the global IP.
 
Thanks a lot for the information.

If it's that far, please also put the reseller user account on global IP when global IP is turned on.

The whole point of the global IP is to put accounts on an IP that is not the server IP and/or that can be shared amongst multiple resellers.

Reseller client accounts on the global Ip while the reseller's user account on another IP doesn't make much sense and actually goes against the point. The goal is to host all accounts of a reseller on the global IP.
Agreed, reseller must be on the Global IP. We have to manually change the IP of each reseller to their global shared IP, so this is much needed too.
 
@DirectAdmin Support there's a bug to your feature, it assigns the reseller fine if the status of the global IP is "Shared" but once the reseller is terminated/deleted, it sets the global IP's status to "Free" for some odd reason. Once it's set to "Free" new resellers cannot be automatically added to the the global IP anymore.

Only way to fix it again is to un-set global and set it global again.

Heres how to re-produce:

1. Create a reseller when directadmin conf has the value "auto_add_global_ip=IP"
2. Reseller will be added to the Global IP specified in the conf.
3. Remove/Delete the Reseller account
4. Global IP status will be set to "Free" (BUG - should be set to "Shared")
5. Re-create the reseller account, now it will no longer be assigned to the global IP.


No resellers can be added to the global IP automatically now, only fix is to manually un-set global the IP and re-set it to Global again.
 
@DirectAdmin Support Seems like I might have found another issue: Is it normal for the default user account attached to the reseller account to have the server IP? I have tried messing with scripts but I cannot get DA to automatically create reseller accounts without having their attached user/domain account on the server IP.

The global IP setting works well, the resellers only have access to that global IP when they create new accounts. But the issue is the default user account attached to the reseller account has the main server IP assigned to it, I would like it to have the global IP as well.

If there's anyone with a solution to this, will appreciate any help - thank you!
 
I am not sure if this feature is working.

I have a DirectAdmin shared hosting server which auto upgraded to DirectAdmin Version 1.61.5.

When I go to assign

cd /usr/local/directadmin
./directadmin set auto_add_global_ip 1.2.3.4

It gives me the following error

Error with the current values:
Cannot find 'auto&#95;add&#95;global&#95;ip' in the directadmin.conf

I then manually added the value:

nano /usr/local/directadmin/conf/directadmin.conf

auto_add_global_ip=1.2.3.4

service directadmin restart

Then created a reseller account.

The reseller got created with no shared IP.

When tried to add a client account, it gave me the no IP found error.

The reseller's user account was created on the server shared IP (hostname)

I have multiple shared IPs and one global IP on that server.

Any thoughts on what is going wrong?
 
@DirectAdmin Support Seems like I might have found another issue: Is it normal for the default user account attached to the reseller account to have the server IP?

The reseller's user account needs to be on the global IP when a reseller is assigned a global IP.
 
It seems there has been some development regarding global IP.

When creating a Reseller, if "Shared - Server" is selected for the Reseller creation (ip=shared), but "Share Server IP" is disabled in the selected package,
and there is more than 1 global IP that will be assigned to this Reseller, then the fallback will be to use the first global IP that was assigned to the Reseller (eg: lowest sorted number)

Ref: https://www.directadmin.com/features.php?id=2897

Thank you for going this far. I know you all are doing hard work. But it seems you are implementing this feature from a sys admin's point of view.

We need features that seem friendly to end users who know nothing about servers. In the past few months, 90% of servers and reseller accounts I have sold reverted back to another control panel. We can argue that the features work, which I have no doubt, but from my conversion rates, it seems something is off.

The way the global IP is being implemented, old DA users can understand. But it is confusing to newcomers.

Instead of implementing logic, could it be more intuitive?

Like a drop down field with three choices: Server IP, Reseller Shared IP, Global IP

Server IP = The server's primary (hostname) IP
Reseller Shared IP = A dedicated IP will automatically be assigned to the reseller and set to be shared among the reseller's users
Global IP = A global IP will be selected based on the auto_add_global_ip value
 
But it seems you are implementing this feature from a sys admin's point of view.
Which is logic, because panels are admin panels, not user panels. End users normally don't have anything to do with different ip's.
If your customers revert back to other panels, it would be good to try and find out why exactly. It can't have anything to do with ip's as that is nothing for end users.

The way the global IP is being implemented, old DA users can understand. But it is confusing to newcomers.
Why? It wasn't confusing to me when I was new. Also same when I install cPanel or Plesk freshy. Nothing confusing about it, because it's not really default that every reseller get's it's own ip. Lot's of hosters don't use that, so it's quite logic that this is not automatically assigned to resellers.

For me personally, a selection box would just be as confusing as like it is now. For example, I wouldn't know what you mean by Global IP.
I don't see anything like that on a fresh installation.

However, you idea of a selection box (with explanation of what it is) might be a good idea.
But best way to find out if there is interest for this, is to add this suggestion to DA's feedback forum.
 
Back
Top