If the IP is static then wouldnt the host always be the same? Anyhow, to get a good accurate IP from the user you can use /DNS $$1/$nick. That can be annoying though if its associated with an On Join event and doesnt always work if the channel or server is busy.
on *:JOIN:*: { /dns $nick } on *:DNS: { if ($dns(0).ip == 00.000.00.000) { /say Hello Jack!!! } }
again depends on the ircd some have hostmasking and a dns on the nick wouldnt result in anything but an error Here I picked a random user from my room Rio!SonixAdven@D1083E36.672B1139.7700951A.IP * Unable to resolve D1083E36.672B1139.7700951A.IP