Re: Worked example, was Re: Still unable to restart networking on Debian 9 text mode only
On 11/25/2018 3:05 AM, David Wright wrote:
> On Sat 24 Nov 2018 at 12:25:20 (-0500), Gary Dale wrote:
>> On 2018-11-23 8:25 a.m., Luciano Andress Martini wrote:
>>> Additional information - Again Debian 9.6 Fresh Install without
>>> graphical interface:
>>>
>>> cat /etc/network/interfaces:
>>>
>>> # This file describes the network interfaces available on your system
>>> # and how to activate them. For more information, see interfaces(5).
>>>
>>> source /etc/network/interfaces.d/*
>>>
>>> # The loopback network interface
>>> auto lo
>>> iface lo inet loopback
>>>
>>> # The primary network interface
>>> allow-hotplug enp0s3
>>> iface enp0s3 inet static
>>> address 10.5.0.2/24
>>> gateway 10.5.0.1
>>> # dns-* options are implemented by the resolvconf package, if installed
>>> dns-nameservers 8.8.8.8
>>> dns-search neoconsig.local
>>>
>>> Just changed 10.5.0.2 to 10.5.0.3
>>>
>>> #ifdown enp0s3
>>> #ifup enp0s3
>>
>> Reco has already explained why this approach is incorrect.
>
> The OP seems to prefer imagining a bug rather than taking much notice
> of the replies.
>
>> My own two cents on the problem is that Interfaces is meant to define
>> how the network is brought up, not to change a running network.
>
> Yes, but it also appears that interfaces also defines how the network
> is brought down again, which is what the OP doesn't understand.
>
>> If you
>> want to change a running network, use ifconfig or ip to change the
>> address. e.g. ifconfig enp-s3 10.5.0.3 should work since all you are
>> changing is the ip address.
>
> I can't see any advantage in this as you have to do all the grunt work
> yourself instead of letting ifdown/ifup do it for you. For example:
>
> Here's my normal /e/n/i:
>
> $ cat /etc/network/interfaces
> # This file describes the network interfaces available on your system
> # and how to activate them. For more information, see interfaces(5).
>
> source /etc/network/interfaces.d/*
>
> # The loopback network interface
> auto lo
> iface lo inet loopback
>
> # The primary network interface
> allow-hotplug enp0s14
> iface enp0s14 inet dhcp
> $
>
> I set up two static alternatives, one using the same address (13) as I
> get from the router, and one wacky one (213) in the "intruder" range:
>
> allow-hotplug enp0s14
> iface enp0s14 inet static
> address 192.168.1.13
> netmask 255.255.255.0
> gateway 192.168.1.1
> dns-nameservers 192.168.1.1
>
> and
>
> allow-hotplug enp0s14
> iface enp0s14 inet static
> address 192.168.1.213
> netmask 255.255.255.0
> gateway 192.168.1.1
> dns-nameservers 192.168.1.1
>
> (the rest of each file is unchanged from the normal one).
>
> Running a script like:
>
> #!/bin/bash
> ifdown enp0s14
> cp /etc/network/interfaces-static-213 /etc/network/interfaces
> ifup enp0s14
>
> releases the lease, downs the avahi-daemon, changes the network
> address, restarts the ssh server, reconfigures ntpd, and ups the
> avahi-daemon. My ssh session also goes dead (as I was logged in
> that way).
>
> Logging in on 192.168.1.213 instead (and avoiding polluting my
> known_hosts file) I can now run a similar script to the above,
> that has the line
> cp /etc/network/interfaces-static-13 /etc/network/interfaces
> or
> cp /etc/network/interfaces-normal-dhcp /etc/network/interfaces
> in it, and my old ssh session comes alive again (the new session
> going dead of course). The logs show all the other changes being
> reversed back to normal, with a new lease etc.
>
TL-DR.
Instead of using the cp command, one could use mapping stanza:
http://manpages.ubuntu.com/manpages/bionic/man5/interfaces.5.html#mappings
--
John Doe
Reply to: