diff options
Diffstat (limited to 'fw/lib/svc')
| -rw-r--r-- | fw/lib/svc/fw.ether0 | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/fw/lib/svc/fw.ether0 b/fw/lib/svc/fw.ether0 index 93de412..627b1d3 100644 --- a/fw/lib/svc/fw.ether0 +++ b/fw/lib/svc/fw.ether0 @@ -8,9 +8,12 @@ # when the last of fw exits, whether that is the wire failing, the # control filesystem going away, or a note. # -# It has to start after the card has an address, because that is where -# fw reads the address, mask and gateway from - and before anything -# dials, because a connection made before fw is up was never filtered. +# It has to start before anything dials: a connection made before fw is +# up was never filtered. +# +# If fw dies the machine has no network until it is restarted. That is +# the intended behaviour and not a fault - see FAILURE in fw(8) - so +# restart=always is what you want, not a supervisor that gives up. # svc=fw.ether0 exec=/bin/fw @@ -20,6 +23,18 @@ svc=fw.ether0 args=/mnt/fw/ether0 args=-e args=/net/ether0 +# +# The address and gateway, rather than letting fw read them off the +# card. A fw that has died has taken the address with it, so a +# restarted fw has nothing to read; told them, it can restart into the +# bare card it left behind. Without them restart=always brings fw back +# only to fail, and the machine stays off the network - which is the +# safe direction, but not a working one. +# + args=-a + args=10.0.2.15/24 + args=-g + args=10.0.2.2 args=/lib/fw/host.ndb needs=ipconfig ready=srv:fw.ether0 |
