This brief document is meant to illustrate two things:

- What is a user@host?

- What is a hostmask?

First, user@host. Every IRC user, or every Internet user for that matter, has a unique user@host which identifies that person. Here is an example:

We have Mike, an IRC user on When we /whois Mike we see something like this:

  Mike     -
  realname -  I am neat
  channels -  @#continuum
  server   -
  idle     -  0h 5m 59s

On the first line we see that Mike is "". This is Mike's user@host. "miked" is the user and "" is Mike's host. Put them together and you've got a user@host

Mike proceeds to register his nickname with NickServ. NickServ now knows that the owner of the nickname "Mike" is the person whose user@host is "". Now what happens if Mike connects to IRC the next day and his user@host is now ""? Well, NickServ says that Mike doesn't own the nick now because "" is not the same as "". Is Mike out of luck? No, because NickServ uses hostmasks to identify users.

Through the use of wildcards (*), a hostmask can match many different user@hosts. Mike's hostmask would be "miked@*". The space occupied by the "*" can be replaced with anything as the long as the rest of the user@host is not changed. For example, "" and "" both match "miked@*", but " does not. The reason it does not match is because it contains 'bleh' where it should contain 'dynamip'.

Both ChanServ and NickServ use hostmasks to identify users. The most common reason that NickServ does not recognize you or ChanServ will not op you is that your current user@host does not match the hostmask that you are identified by. Please be sure that this is not the case before you ask for help in #continuum.