Custom Software Development by ISC
Why does ISC do custom development?
While our primary mission doesn't obviously require that we do custom development, we find that doing so is supporting our commitment to writing and maintaining relevant, useful, open source implementations of Internet standards. Among other reasons, custom development of features keeps our software useful in the real world, one of our fundamental goals. And for some of our funding partners, supporting development of protocol features that will be included in our distributions is a donation to the community: not only do they have the use of the work they paid for, but so does everyone.
What custom development does ISC do?
Our custom development projects have varied in scope and purpose, but they are always undertaken towards our two most basic purposes: those efforts keep our software up-to-date as implementations of the relevant technical standards, and they help us to provide flexible, reliable, production-quality code for use in mission-critical contexts, free for download to anyone.
Particular areas in which we have undertaken recent custom development work include:
- Maintaining compatibility with the IETF standards for DNS and DHCP in regular, freely available releases. Examples: GSS-TSIG in BIND, subsidized by the US Department of Defense through a contract with Sparta, Inc.; DHCP extensions to support IPv6, initially funded by Comcast.
- Making sure that our software performs reasonably well and is secure, reliable, and manageable in production environments, so that people will want to use it in the real world. Example: extensive performance enhancements in BIND 9.4.0, subsidized by Toshiba
- Adding features, configuration options, and other functionality in response to specific needs for specific customers, such as a set of configuration options to support root and TLD operators using large numbers of anycast instances to improve the reliability of their DNS infrastructure
- Supporting protocol evolution and development with experimental implementations of prototype, draft, or controversial technology, such as proposed extensions to the DNSSEC specification.
What custom development does ISC not do?
Our mission is important to us. There are some changes we will not make to our software because they would be inconsistent with our principles. In particular, we will not implement a "feature" that violates DNS or DHCP protocol standards, nor will we write code that is secret or proprietary, or can't be released as part of a normal new BIND or DHCP version. Our commitment to standards-compliant, freely available, open source BIND and DHCP is fundamental to the company's public benefit purpose and standing.
However, we have found that we can accommodate a wide variety of constraints as long as we end up with production-quality, standards-compliant, publicly available software. In cases where a desired feature as initially described would violate protocols, we can sometimes find ways of getting functionality that meets the customer's need and doesn't violate those protocols, or we can use our participation in the IETF and other activities to effectively represent the needs of our real-world customers in the standards-making process. We have also been able to accommodate cases where it was inappropriate to release code publicly until specific underlying documents or standards had also been released.
For more information, you can contact our representatives using our contact form
- BIND 10
- Other Software Projects
- security advisories
- software forums
- ABOUT ISC