Interface
Interface is a position-dependent config.txt/ezproxy.cfg option that interacts
with LoginPort, LoginPortSSL,
ShibbolethSite as well as database definitions.
In the absence of Interface statements, EZproxy allows the operating system to select
which IP address should be used to listen for incoming connections and to use when making outgoing
connections. The Interface allows the specification of which source IP address should be used
for particular purposes.
The Interface statement accepts a single parameter, which can be either one of the IP addresses
on the server where EZproxy is installed or the word Any to tell EZproxy to listen on any IP address and to allow
the operating system to select the source IP address used when creating an outgoing connection.
Example
A type configuration of EZproxy in proxy by hostname might look like this:
Name ezproxy.yourlib.org
LoginPort 80
LoginPortSSL 443
Title Some Database
URL http://www.somedb.com/
Domain somedb.com
Title Other Database
URL http://www.otherdb.com/
Domain otherdb.com
In most instances, if you want to direct EZproxy to listen on a specific IP address, it is also reasonable for
that address to serve as the source IP address for database requests. In such an instance, the most common
application of Interface is the addition of a single statement prior to LoginPort, such
as:
Name ezproxy.yourlib.org
Interface 68.14.229.198
LoginPort 80
LoginPortSSL 443
Title Some Database
URL http://www.somedb.com/
Domain somedb.com
Title Other Database
URL http://www.otherdb.com/
Domain otherdb.com
This Interface statement impacts not only the LoginPort and LoginPortSSL statements, but also directs EZproxy to use this source IP address when connecting to these databases. If you change the database
definition to:
Name ezproxy.yourlib.org
Interface 68.14.229.198
LoginPort 80
LoginPortSSL 443
Title Some Database
URL http://www.somedb.com/
Domain somedb.com
Interface Any
Title Other Database
URL http://www.otherdb.com/
Domain otherdb.com
EZproxy will listen on 68.14.229.198 for login requests and use that as the source IP when proxying
Some Databases, but will allow the operating system to select the source IP when proxying
Other Database. It is unusual to need to intermix Interface statements within database
definitions, but it is possible to do this to meet unique requirements.
Source IP address for user authentication
Interface does not change the source IP address used when processing the user.txt/ezproxy.usr file
to perform user authentication. To specify the source IP for user authentication, you must Interface as part
of the line in user.txt/ezproxy.usr, such as:
::Interface=68.14.229.198,FTP=ftpserv.yourlib.org
See also
LoginPort LoginPortSSL ShibbolethSite