On Monday 21 August 2017 13:19:11 Christian Seiler wrote: > On 08/21/2017 07:07 PM, Gene Heskett wrote: > > On Monday 21 August 2017 12:11:38 Christian Seiler wrote: > >> On 08/21/2017 05:03 PM, Gene Heskett wrote: > >> iface eth0 inet static > >> address 192.168.0.1/24 > >> address 192.168.0.42/24 > >> address 10.5.6.7/8 > >> > >> This will work, and it will assign all IPs to the interface (the > >> first one being the primary and the source IP of outgoing packets > >> where the program doesn't explicitly bind anything). And "ip a" > >> will show all three addresses, but "ifconfig -a" will only show the > >> first. > > > > Ok, but then how do you differentiate between the addresses without > > the :1 [:2 etc] notation? > > I don't understand the question? Where do you want to specify an > address? When removing the address you just say "remove address XYZ > from interface ABC". > > > It doesn't seem right that is would bang all the assigned addresses > > with duplicate data. > > I don't get what you mean here. What is duplicate? If you open an > outgoing connection by default the primary (first) IP that matches > the outgoing subnet will be used as the source IP for that > connection - but a program can override that by binding the socket > to any of the other IPs of that interface. > I'll have to study up on this "binding" and how its done.
> In the above example: any connection to 192.168.0.23 will by default > carry the source IP 192.168.0.1, and any connection to 10.1.1.1 will > by default carry the source IP 10.5.6.7. An application can create > an outgoing connection with source IP 192.168.0.42 by explicitly > binding the socket to that IP before making the connection. > > Which is kind of similar to alias interfaces: with alias interfaces > the route metric of the alias interfaces relative to each other > defines what IP will be used by default, but again it is possible > for an application to override that by binding the socket to a > specific IP address. > > And incoming connections are trivial anyway in these setups. > > From the point of view of applications that just use the socket layer > (and don't care about network interface names) the system will react > in the same way whether you use multiple addresses per interface or > whether you use alias interfaces. The main differences are in how it > is configured and how the kernel code works. > > Regards, > Christian This has been an enlightening discussion, Christian, thank you for your time. Cheers, Gene Heskett -- "There are four boxes to be used in defense of liberty: soap, ballot, jury, and ammo. Please use in that order." -Ed Howdershelt (Author) Genes Web page <http://geneslinuxbox.net:6309/gene>