|
Yes you can bind to a specific IP address. What I would do is create a virtual IP address on your AS400. Just like adding a physical with a couple of parameters changed. Then on your default router add the two physical IP addresses as routes to the Virtual IP address, which must be in it's own subnet. For example with both Ethernets in the same subnet: Eth01 = 10.0.0.1 / 255.255.255.0 Eth02 = 10.0.0.2 / 255.255.255.0 VirtIP= 10.254.254.1 / 255.255.255.255 Route 1 = 10.254.254.1 255.255.255.255 10.0.0.1 metric 1 Route 2 = 10.254.254.1 255.255.255.255 10.0.0.2 metric 2 This does not give you inbound balancing but will give you outbound balancing. For example with each ethernet in a different subnet: Eth01 = 10.0.1.1 / 255.255.255.0 Eth02 = 10.0.2.1 / 255.255.255.0 VirtIP= 10.254.254.1 / 255.255.255.255 Router in subnet 1 = 10.0.1.254: Route 1 = 10.254.254.1 255.255.255.255 10.0.1.1 metric 1 Route 2 = 10.254.254.1 255.255.255.255 10.0.2.254 metric 2 Router in subnet 2 = 10.0.2.254: Route 1 = 10.254.254.1 255.255.255.255 10.0.2.1 metric 1 Route 2 = 10.254.254.1 255.255.255.255 10.0.1.254 metric 2 This will give you failover in each subnet but no outbound load balancing. For inbound load balancing you will need an external box running monitoring and load balancing software. Now we let our server programs bind to all IP address but only hand out the Virtual IP via Wins and DNS. As far as client connecting consistently using the same interface or the Virtual IP interface, here is a code snippet: d dsServerAddr ds d sin_family 5i 0 inz d sin_port 5u 0 inz d sin_addr 10i 0 inz d sin_zero 8a inz * Bind server IP & port to socket descriptor c eval sin_port = s_ports c eval sin_family = AF_INET c eval sin_addr = INetAddr(*VirtualIP*) <-retrieved using DNS query c eval sin_zero = X'0000000000000000' c eval iServiceAddrLen = %size(dsServerAddr) c eval iRC = Bind( iListeningSocket c : %addr(dsServerAddr) c : iServiceAddrLen ) -----Original Message----- From: York, Albert I have an AS/400 with two ethernet cards in it, for redundancy. They each have their own IP address. Is there a way for me to select a specific ethernet line when I open a socket? The AS/400 always seems to select the first line unless its interface is inactive.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.