I had some experience with Asterisk and SJPhone.
If your network does not need complex dialing plans (like hotlines etc), and your PC's are accessible from each other, then you don't need a server at all.
SJphone can establish a peer-to-peer connection just by using an IP address or a host name.
If your PC's cannot access each other, then you should setup Asterisk and enable client registration on it.
On my Fedora 10, Asterisk worked out of box.
Client registration is like being online on ICQ or MSN: the server knows you're online and keeps your TCP stream alive in case someone wants to call you.
It also can be used to show status of people: who's online, offline, busy etc.
There is a sample sip.conf file included, it's really simple. For each client, you create an entry like this:
[john]
type=friend
secret=secretpassword
host=dynamic
There are plugins that can keep this data in the database, but I didn't look at them yet.