Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Providing UNIX applications with a flexible source addresses selection on a per-application basis

IP.com Disclosure Number: IPCOM000015531D
Original Publication Date: 2002-Apr-07
Included in the Prior Art Database: 2003-Jun-20
Document File: 2 page(s) / 59K

Publishing Venue

IBM

Abstract

The problem VIPAs (virtual IP addresses) are IP addresses that are not bound to an interface, but bound to the whole system. In UNIX, this is usually achieved by creating a dummy interface and setting one or more IP addresses on it. Outside applications connect to the VIPA instead of the interfaces' IP addresses and therefore are tolerant to interface failures. However, as soon as connections are initiated from the system itself, the UNIX kernel will select the outgoing interface address as source IP address. Source VIPA is a conception that makes outgoing sockets use the VIPA as source address, as only few applications are smart enough to do so themselves. Usually, source VIPA is accomplished by an altered kernel code and kernel routing table. Moreover, it has immediately effect on all applications running on the system. The solution Disclosed is a program that provides a UNIX system with an extremely flexible means of source address selection that is application based and gets by without any kernel changes. For applications that are to use source VIPA, a library wrapper is introduced between the application and the runtime environment. This wrapper intercepts socket calls and issues other socket calls to the runtime environment, if needed. The wrapper is pre-loaded by the dynamic linker at the time the application is started. It loads a configuration file during library initialization.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 52% of the total text.

Page 1 of 2

  Providing UNIX applications with a flexible source addresses selection on a per-application basis

The problem

   VIPAs (virtual IP addresses) are IP addresses that are not bound to an interface, but bound to the whole system. In UNIX, this is usually achieved by creating a dummy interface and setting one or more IP addresses on it. Outside applications connect to the VIPA instead of the interfaces' IP addresses and therefore are tolerant to interface failures. However, as soon as connections are initiated from the system itself, the UNIX kernel will select the outgoing interface address as source IP address. Source VIPA is a conception that makes outgoing sockets use the VIPA as source address, as only few applications are smart enough to do so themselves. Usually, source VIPA is accomplished by an altered kernel code and kernel routing table. Moreover, it has immediately effect on all applications running on the system.

The solution

   Disclosed is a program that provides a UNIX system with an extremely flexible means of source address selection that is application based and gets by without any kernel changes. For applications that are to use source VIPA, a library wrapper is introduced between the application and the runtime environment. This wrapper intercepts socket calls and issues other socket calls to the runtime environment, if needed. The wrapper is pre-loaded by the dynamic linker at the time the application is started. It loads a configuration file during li...