OpenIAX Logo

OpenIAX is a FREE implementation of the Inter-Asterisk™ eXchange protocol, version 2, commonly known as IAX2. It allows anyone to build IAX clients, phones, proxies and servers. It is written in ANSI C, and is expected to compile and run on any system with BSD networking. It does currently require a modern implementation with getaddrinfo(3) and getnameinfo(3) for doing host lookups -- this is expected to be replaced by an asynchronous resolver library at some point. It does not make any assumptions on the IP layer, and should run equally well over IPv4 and IPv6.

It should be noted that the reference implementation as found in Asterisk™ as well as in libiax does not currently support running over IPv6, and as such interoperability with IAX implementations over IPv6 other than itself is not known to work, though it is expected to. Also, no compatibility with IAX version 1 is provided. This implementation has been verified to work with Asterisk™ over IPv4.

OpenIAX is freely usable and re-usable by everyone under a modified BSD license. It has been implemented purely based on publicly available specifications and, where needed, protocol dumps of communications between other working implementations.

As of yet, there have been no code releases, but that is expected to happen soon. The initial version may not be full featured, but will be released in order for people and organizations to be able to try things out. The current status is also available.

Online discussions about OpenIAX also happens on the #openiax channel on irc.freenode.net.