Yeah, it's rather annoying that you cannot get it as a statistic... would be great to check if someone is using multiple accounts to get around a ban, and suchlike!
Would be especially handy to IP ban/range ban on the demo servers, via insim! *nods*
Most of them but not all. And they(the IPs) usually change every day(unless some one has nothing better to do from annoying the server admins with restarting his modem just to change his ip and go for some more """fun""") or on some even more rarely. And anyway there still are people with static IPs.
But some ISPs do give you a static IP. My IP has been the same at home for ... 3 years. Before that I had the same IP for 2 years.
24.46.196.135 (My old USA NYS OpOnline IP address - 2 Years Ago) ... I used to play BF1942 and I gave that IP address out ALOT as I had a fast cable connection and time to kill. I had that for three years, then I switched over to FiOS and I still have the same IP address they assigned to me when I first opened the account.
i've only had mine change when my modem goes offline for an extended period of time (6h or more), which shouldn't happen... in the past 4 years, it's only happened once. the other times were from me moving around in the city.
only problem is, i can't remember my new one because there's so many 2's and 8's in it. (thank god for DNS)
as for the banning IP addresses part, there was another topic around here where i basically said if you want someone gone permanently, it's not going to be easy... if they change their MAC and/or get a new IP, you can CIDR block the entire ISP... but then that doesn't stop proxies... in my case, i've never had anyone evade an CIDR-ban, but it's certainly possible.
Wouldn't work for remote insims. Anyway on local PC it is possible but it's also possible to read the wrong IP because the only time you can trigger the insim is on the message "New guest is connecting" and if there is a queue of people waiting to join and by some chance they all have strong internet connections the insim might get lost in the IP addresses.
Anyway maybe this can be avoided too but you can never make it in a way that you can be 100% sure in it.
It's delivered like a message already. I don't know how the dedi works exactly but I do think that the connection messages can be included in the MSO packet. Just the UCID has to be something like -1 and there you go. On the message "Connect: XX.XX.XX.XX" you get it in a string[] and on new connection you make something like:
int yourint = 0;
while (yourstring[].length >= yourint)
{
yourint += 1;
TheConnection.IP = yourstring[yourint];
yourstring[yourint] = yourstring[yourint+1];
}
...That way you will save yourself the reading of a long text file and getting it's last messages and so on(you get what I mean).
If I have to say it with simple words: I want to be able to get the IP of the user with just those 7 lines of code(even less if we don't count the brackets) instead of making an endless and unstable function(which I won't make anyway but that's another question).
And still: I do believe that this isn't as necessary as some other stuff that has to be done with LFS.
Aaaand just in case you are wondering: Yes I was a bit bored and had free time to make this post.