in *0 every time do you join on the server?
Yes, just like a RCON, you do have to login each time you rejoin the server.
This is kind of different from how B3 usually works : normally, an admin setup an account once (with !putgroup), and then the user gets automatically his privileges each time he connects to the server. With DynamicLogin set to type 0, this system won't be used (you can still use it at the same time though), and instead, you give a password to each of your members, and they have to login each time they want to get their privileges.
On the other way, the two other types of DynamicLogin works in a similar way than B3 normal behaviour.
in *1 only an account can use an old account?
Yes, let's put an example : you are a superadmin, but you have a dynamic IP and guid. You set a username and password with !regaccount.
When your IP and guid change, B3 won't recognize you as a superadmin anymore. Then, you simply have to use !loginaccount with your previously set username and password, and you get back all your superadmin status and privileges !
What technically happens is that, with type 1, when you login, the database will be updated with your new ip and guid.
Since the database is updated, next time you reconnect to the server, you won't have to relogin (except if your ip and guid change), B3 will automatically recognize you (even if you disable the plugin).
in *2 several accounts have to change ip in order to relog?
No, type 2 is similar to type 1, in the sense that it will update the database informations. But here, instead of updating, it will duplicate the privileges to you.
The effect is the same : once you !loginaccount with type 2, you get automatically recognized by B3 next time.
The difference here with type 1, is that with type 2, several different players can get the same privileges, while with type 1, only one will at a time.
An example : you play with 3 different computers : one at home, one at school and one at work. Thus, you have 3 different IPs and GUIDs, but you want to get your privileges back from each of these locations. With type 1, each time you change location, you will have to !loginaccount to get your rights (because each time you login, you will remove your previous location informations and update with new ones). With type 2, you !loginaccount once for each location (so 3 times in total), and then you will never have to !loginaccount again ! (because here you duplicate the informations, so the old ones are still valid).
I think that for most uses, type 0 fits. It's the simplest to use and to apprehend.