hm, my isn't.

What could the difference between your setup and mine be?

version of ifupdown running:
ifup --version
ifup version 0.7.47.2ubuntu4
Copyright (c) 1999-2009 Anthony Towns
Copyright (c) 2010-2013 Andrew Shadura

I've looked through the source and it seems that version 0.7.41 changed ifupdown to do "noop" on loopbacks which would explain the behaviour i see. I'm curious as to why this was changed though since i don't think it's the expected behaviour to ignore the request.
http://anonscm.debian.org/hg/collab-maint/ifupdown/rev/1ff1adb9ea06

--no-loopback
Disable special handling of the loopback interface. By default, the loopback interface (lo on Linux) is predefined internally as an auto interface, so it's brought up on ifup -a automatically. In the case the loopback device is redefined by user, the interface is configured just once anyway. If, however, another interface is also defined as loopback, it's configured as usual. Specifying this option disables this behaviour, so the loopback interface won't be configured automatically.

I also tested on my laptop (which is also ubuntu trusty) and ifdown / ifup doesn't touch the actual loopback interface.

Another server that's running 0.7.8 (Debian wheezy) is managing loopback as expected:
ifup --version
ifup version 0.7.8
Copyright (c) 1999-2007 Anthony Towns

ip addr show dev lo
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever

ifdown -v lo
Configuring interface lo=lo (inet)
run-parts --verbose /etc/network/if-down.d
run-parts: executing /etc/network/if-down.d/bind9
run-parts: executing /etc/network/if-down.d/postfix
run-parts: executing /etc/network/if-down.d/upstart
ip link set dev lo down
run-parts --verbose /etc/network/if-post-down.d
run-parts: executing /etc/network/if-post-down.d/bridge
run-parts: executing /etc/network/if-post-down.d/ifenslave
+ BOND_PARAMS=/sys/class/net/lo/bonding
+ IFSTATE=/etc/network/run/ifstate
+ [ -f /sys/class/net/lo/master/bonding/slaves ]
+ [ ! -f /sys/class/net/lo/bonding/slaves ]
+ exit

ip addr show dev lo
1: lo: <LOOPBACK> mtu 16436 qdisc noqueue state DOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo

ifup -v lo
Configuring interface lo=lo (inet)
run-parts --verbose /etc/network/if-pre-up.d
run-parts: executing /etc/network/if-pre-up.d/bridge
run-parts: executing /etc/network/if-pre-up.d/ethtool
run-parts: executing /etc/network/if-pre-up.d/ifenslave
+ IFSTATE=/etc/network/run/ifstate
+ IF_BOND_SLAVES=
+ [  ]
+ [  ]
+ [ -z  ]
+ exit
ip link set dev lo up
run-parts --verbose /etc/network/if-up.d
run-parts: executing /etc/network/if-up.d/bind9
run-parts: executing /etc/network/if-up.d/ethtool
run-parts: executing /etc/network/if-up.d/ifenslave
+ [  ]
run-parts: executing /etc/network/if-up.d/mountnfs
run-parts: executing /etc/network/if-up.d/openssh-server
run-parts: executing /etc/network/if-up.d/postfix
run-parts: executing /etc/network/if-up.d/ucarp
run-parts: executing /etc/network/if-up.d/upstart

ip addr show dev lo
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever



2014-09-30 23:48 skrev Andrew Shadura:
Hello,

On Tue, 30 Sep 2014 17:20:17 +0200
[email protected] wrote:

Upon booting a machine with the following setup on a relatively
slimmed down netboot machine the loopback interface isn't brought up
properly:

cat /etc/network/interfaces
auto lo
iface lo inet loopback
iface lo inet6 loopback

auto eth0
iface eth0 inet6 auto
dhcp 1
#iface eth0 inet ipv4ll

auto eth1
iface eth1 inet6 auto
dhcp 1
#iface eth1 inet ipv4ll

With this config my ifupdown says the following:

ip link set up dev lo 2>/dev/null
run-parts --exit-on-error /etc/network/if-pre-up.d
run-parts --exit-on-error /etc/network/if-up.d
run-parts --exit-on-error /etc/network/if-pre-up.d
run-parts --exit-on-error /etc/network/if-up.d
run-parts --exit-on-error /etc/network/if-pre-up.d
run-parts --exit-on-error /etc/network/if-up.d

All seems fine, everything is working from here on.

My expectation is that ifup should configure the interface and set
state to up, and ifdown should set state to down, even though it's a
loopback that may or may not be magically autoconfigured somewhere
else.

It does this. You don't even need to add loopback interface to the
config for this.

It also seems like ifup is actively not configuring loopback twice,
but running all scripts for it..

loopback should be up properly on both ipv4 and ipv6.

I've subscribed and i'll gladly help if anything is missing to get
this resolved.


--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Reply via email to