You are not logged in.

#1 2014-02-15 00:06:59

actionless
Member
Registered: 2014-01-03
Posts: 15

[S]Netctl-auto. Default route resets after physical interface restart.

On my lappy i have a button to physically turn on/off wi-fi.
So the problem is when i'm turning it off and then on my connection is restoring with netctl-auto but defaul route is being deleted, ie record "default via 192.168.*.1 dev wlan0" is not longer in "ip route" command output.
In case when i just going so far from one wi-fi ap and getting closer to another one network switches fine and no problem with route.

So do u have any suggestions what am i doing wrong?

Last edited by actionless (2014-02-17 16:42:36)

Offline

#2 2014-02-15 20:06:10

Rexilion
Member
Registered: 2013-12-23
Posts: 784

Re: [S]Netctl-auto. Default route resets after physical interface restart.

With:

journalctl -f

you can follow systemD logs. Open a terminal, become root and then perform this command. Reproduce the issue and attach the new lines to this post.


fs/super.c : "Self-destruct in 5 seconds.  Have a nice day...\n",

Offline

#3 2014-02-16 11:37:11

actionless
Member
Registered: 2014-01-03
Posts: 15

Re: [S]Netctl-auto. Default route resets after physical interface restart.

Feb 16 13:52:29 %HOST wpa_actiond[245]: Interface 'wlp12s0' lost connection to network '%AP_NAME'
Feb 16 13:52:29 %HOST kernel: iwlwifi 0000:0c:00.0: RF_KILL bit toggled to disable radio.
Feb 16 13:52:29 %HOST kernel: wlp12s0: deauthenticating from %KEY by local choice (reason=3)
Feb 16 13:52:29 %HOST kernel: iwlwifi 0000:0c:00.0: Not sending command - RF KILL
Feb 16 13:52:29 %HOST kernel: wlp12s0: failed to remove key (0, %KEY) from hardware (-5)
Feb 16 13:52:29 %HOST kernel: iwlwifi 0000:0c:00.0: Not sending command - RF KILL
Feb 16 13:52:29 %HOST kernel: iwlwifi 0000:0c:00.0: Not sending command - RF KILL
Feb 16 13:52:29 %HOST kernel: iwlwifi 0000:0c:00.0: Not sending command - RF KILL
Feb 16 13:52:29 %HOST kernel: iwlwifi 0000:0c:00.0: Not sending command - RF KILL
Feb 16 13:52:29 %HOST kernel: iwlwifi 0000:0c:00.0: Not sending command - RF KILL
Feb 16 13:52:29 %HOST kernel: iwlwifi 0000:0c:00.0: Not sending command - RF KILL
Feb 16 13:52:29 %HOST kernel: wlp12s0: failed to remove key (1, ff:ff:ff:ff:ff:ff) from hardware (-5)
Feb 16 13:52:29 %HOST dhclient[2308]: receive_packet failed on wlp12s0: Network is down
Feb 16 13:52:29 %HOST kernel: iwlwifi 0000:0c:00.0: Not sending command - RF KILL
Feb 16 13:52:29 %HOST kernel: cfg80211: Calling CRDA to update world regulatory domain

Feb 16 13:52:30 %HOST kernel: iwlwifi 0000:0c:00.0: RF_KILL bit toggled to enable radio.
Feb 16 13:52:30 %HOST kernel: iwlwifi 0000:0c:00.0: L1 Enabled; Disabling L0S
Feb 16 13:52:30 %HOST kernel: iwlwifi 0000:0c:00.0: Radio type=0x1-0x2-0x0
Feb 16 13:52:30 %HOST kernel: IPv6: ADDRCONF(NETDEV_UP): wlp12s0: link is not ready
Feb 16 13:52:33 %HOST kernel: wlp12s0: authenticate with %KEY
Feb 16 13:52:33 %HOST kernel: wlp12s0: send auth to %KEY (try 1/3)
Feb 16 13:52:33 %HOST kernel: wlp12s0: authenticated
Feb 16 13:52:33 %HOST kernel: iwlwifi 0000:0c:00.0 wlp12s0: disabling HT as WMM/QoS is not supported by the AP
Feb 16 13:52:33 %HOST kernel: iwlwifi 0000:0c:00.0 wlp12s0: disabling VHT as WMM/QoS is not supported by the AP
Feb 16 13:52:33 %HOST kernel: wlp12s0: associate with %KEY (try 1/3)
Feb 16 13:52:33 %HOST kernel: wlp12s0: RX AssocResp from %KEY (capab=0x411 status=0 aid=1)
Feb 16 13:52:33 %HOST kernel: wlp12s0: associated
Feb 16 13:52:33 %HOST kernel: IPv6: ADDRCONF(NETDEV_CHANGE): wlp12s0: link becomes ready
Feb 16 13:52:33 %HOST wpa_actiond[245]: Interface 'wlp12s0' reestablished connection to network '%AP_NAME'

Offline

#4 2014-02-16 14:55:12

Rexilion
Member
Registered: 2013-12-23
Posts: 784

Re: [S]Netctl-auto. Default route resets after physical interface restart.

Can you show me the relevant netctl profile config?
Also the output of: 'systemctl list-unit-files'


fs/super.c : "Self-destruct in 5 seconds.  Have a nice day...\n",

Offline

#5 2014-02-16 16:49:44

actionless
Member
Registered: 2014-01-03
Posts: 15

Re: [S]Netctl-auto. Default route resets after physical interface restart.

Description='%AP_READABLE_NAME'
Interface=wlp12s0
Connection=wireless
Security=wpa
ESSID=%AP_NAME
IP=dhcp
Key=%AP_KEY
UNIT FILE                                  STATE   
proc-sys-fs-binfmt_misc.automount          static  
dev-hugepages.mount                        static  
dev-mqueue.mount                           static  
proc-fs-nfsd.mount                         static  
proc-sys-fs-binfmt_misc.mount              static  
sys-fs-fuse-connections.mount              static  
sys-kernel-config.mount                    static  
sys-kernel-debug.mount                     static  
tmp.mount                                  static  
var-lib-nfs-rpc_pipefs.mount               static  
systemd-ask-password-console.path          static  
systemd-ask-password-wall.path             static  
session-1.scope                            static  
alsa-restore.service                       static  
alsa-state.service                         static  
alsa-store.service                         static  
autovt@.service                            disabled
avahi-daemon.service                       disabled
avahi-dnsconfd.service                     disabled
blkmapd.service                            disabled
colord.service                             static  
console-getty.service                      disabled
console-shell.service                      disabled
cronie.service                             disabled
dbus-org.freedesktop.hostname1.service     static  
dbus-org.freedesktop.locale1.service       static  
dbus-org.freedesktop.login1.service        static  
dbus-org.freedesktop.machine1.service      static  
dbus-org.freedesktop.timedate1.service     static  
dbus.service                               static  
debug-shell.service                        disabled
dhcpcd.service                             disabled
dhcpcd@.service                            disabled
display-manager.service                    enabled 
dmeventd.service                           static  
dropbox@.service                           disabled
emergency.service                          static  
fancontrol.service                         disabled
ftpd.service                               disabled
getty@.service                             enabled 
git-daemon@.service                        static  
gpm.service                                disabled
healthd.service                            disabled
ifplugd@.service                           disabled
initrd-cleanup.service                     static  
initrd-parse-etc.service                   static  
initrd-switch-root.service                 static  
initrd-udevadm-cleanup-db.service          static  
ip6tables.service                          disabled
iptables.service                           disabled
irexec.service                             disabled
kmod-static-nodes.service                  static  
krb5-kadmind.service                       disabled
krb5-kdc.service                           disabled
krb5-kpropd.service                        disabled
krb5-kpropd@.service                       static  
lirc.service                               disabled
lircm.service                              disabled
lm_sensors.service                         disabled
lvm-monitoring.service                     disabled
lvmetad.service                            static  
mdadm.service                              disabled
mdmon@.service                             static  
mkinitcpio-generate-shutdown-ramfs.service static  
mpd.service                                disabled
netctl-auto@.service                       enabled 
netctl-ifplugd@.service                    disabled
netctl-sleep.service                       disabled
netctl.service                             enabled 
netctl@.service                            static  
nfsd.service                               disabled
nscd.service                               disabled
polkit.service                             static  
quotaon.service                            static  
rescue.service                             static  
rlogin@.service                            static  
rpc-gssd.service                           disabled
rpc-idmapd.service                         disabled
rpc-mountd.service                         disabled
rpc-statd.service                          disabled
rpc-svcgssd.service                        disabled
rpcbind.service                            disabled
rsh@.service                               static  
rsyncd.service                             disabled
rsyncd@.service                            static  
sensord.service                            disabled
serial-getty@.service                      static  
slim.service                               enabled 
speech-dispatcherd.service                 disabled
sshd.service                               disabled
sshd@.service                              static  
sshdgenkeys.service                        static  
svnserve.service                           disabled
systemd-ask-password-console.service       static  
systemd-ask-password-wall.service          static  
systemd-backlight@.service                 static  
systemd-binfmt.service                     static  
systemd-fsck-root.service                  static  
systemd-fsck@.service                      static  
systemd-halt.service                       static  
systemd-hibernate.service                  static  
systemd-hostnamed.service                  static  
systemd-hybrid-sleep.service               static  
systemd-initctl.service                    static  
systemd-journal-flush.service              static  
systemd-journal-gatewayd.service           static  
systemd-journald.service                   static  
systemd-kexec.service                      static  
systemd-localed.service                    static  
systemd-logind.service                     static  
systemd-machined.service                   static  
systemd-modules-load.service               static  
systemd-nspawn@.service                    static  
systemd-poweroff.service                   static  
systemd-quotacheck.service                 static  
systemd-random-seed.service                static  
systemd-readahead-collect.service          disabled
systemd-readahead-done.service             static  
systemd-readahead-drop.service             disabled
systemd-readahead-replay.service           disabled
systemd-reboot.service                     static  
systemd-remount-fs.service                 static  
systemd-shutdownd.service                  static  
systemd-suspend.service                    static  
systemd-sysctl.service                     static  
systemd-timedated.service                  static  
systemd-tmpfiles-clean.service             static  
systemd-tmpfiles-setup-dev.service         static  
systemd-tmpfiles-setup.service             static  
systemd-udev-settle.service                static  
systemd-udev-trigger.service               static  
systemd-udevd.service                      static  
systemd-update-utmp-runlevel.service       static  
systemd-update-utmp.service                static  
systemd-user-sessions.service              static  
systemd-vconsole-setup.service             static  
talk.service                               static  
telnet@.service                            static  
udisks.service                             disabled
upower.service                             disabled
usbmuxd.service                            static  
user@.service                              static  
uuidd.service                              static  
wpa_supplicant-nl80211@.service            disabled
wpa_supplicant-wired@.service              disabled
wpa_supplicant.service                     disabled
wpa_supplicant@.service                    disabled
-.slice                                    static  
machine.slice                              static  
system.slice                               static  
user.slice                                 static  
avahi-daemon.socket                        disabled
dbus.socket                                static  
dmeventd.socket                            static  
git-daemon.socket                          disabled
krb5-kpropd.socket                         disabled
lvmetad.socket                             static  
rlogin.socket                              disabled
rsh.socket                                 disabled
rsyncd.socket                              disabled
sshd.socket                                disabled
syslog.socket                              static  
systemd-initctl.socket                     static  
systemd-journal-gatewayd.socket            disabled
systemd-journald.socket                    static  
systemd-shutdownd.socket                   static  
systemd-udevd-control.socket               static  
systemd-udevd-kernel.socket                static  
talk.socket                                disabled
telnet.socket                              disabled
uuidd.socket                               disabled
basic.target                               static  
bluetooth.target                           static  
cryptsetup.target                          static  
ctrl-alt-del.target                        disabled
default.target                             disabled
emergency.target                           static  
final.target                               static  
getty.target                               static  
graphical.target                           disabled
halt.target                                disabled
hibernate.target                           static  
hybrid-sleep.target                        static  
initrd-fs.target                           static  
initrd-root-fs.target                      static  
initrd-switch-root.target                  static  
initrd.target                              static  
kexec.target                               disabled
local-fs-pre.target                        static  
local-fs.target                            static  
multi-user.target                          disabled
network-online.target                      static  
network.target                             static  
nfs-client.target                          disabled
nfs-server.target                          disabled
nss-lookup.target                          static  
nss-user-lookup.target                     static  
paths.target                               static  
poweroff.target                            disabled
printer.target                             static  
reboot.target                              disabled
remote-fs-pre.target                       static  
remote-fs.target                           enabled 
rescue.target                              disabled
rpcbind.target                             static  
shutdown.target                            static  
sigpwr.target                              static  
sleep.target                               static  
slices.target                              static  
smartcard.target                           static  
sockets.target                             static  
sound.target                               static  
suspend.target                             static  
swap.target                                static  
sysinit.target                             static  
system-update.target                       static  
time-sync.target                           static  
timers.target                              static  
umount.target                              static  
systemd-readahead-done.timer               static  
systemd-tmpfiles-clean.timer               static  

221 unit files listed.

btw, when i adding that route manually (

ip route add default via 192.168.1.1

) it works for me too

Last edited by actionless (2014-02-16 16:54:29)

Offline

#6 2014-02-16 17:21:49

Rexilion
Member
Registered: 2013-12-23
Posts: 784

Re: [S]Netctl-auto. Default route resets after physical interface restart.

Seems like a problem with dhcp. Or, something (wpa actiond) is handling the transition causing the route not to be deleted in the first place.

From what I get it, you should do:

systemctl enable netctl-auto@wlp12s0.service

Then try again.


fs/super.c : "Self-destruct in 5 seconds.  Have a nice day...\n",

Offline

#7 2014-02-17 10:27:40

actionless
Member
Registered: 2014-01-03
Posts: 15

Re: [S]Netctl-auto. Default route resets after physical interface restart.

I was already done it initially to make netctl-auto work -- without enabling that it wasn't work at all. Don't know why it's not in 'systemctl list-unit-files' output (mb 'netctl-auto@.service' there is meant to be it), but when i running "systemctl --type=service" i see it:

UNIT                                  LOAD   ACTIVE SUB     DESCRIPTION
dbus.service                          loaded active running D-Bus System Message Bus
getty@tty1.service                    loaded active running Getty on tty1
kmod-static-nodes.service             loaded active exited  Create list of required static device nodes for the current kernel
netctl-auto@wlp12s0.service           loaded active running Automatic wireless network connection using netctl profiles
netctl.service                        loaded active exited  (Re)store the netctl profile state
polkit.service                        loaded active running Authorization Manager
slim.service                          loaded active running SLiM Simple Login Manager
systemd-backlight@acpi_video0.service loaded active exited  Load/Save Screen Backlight Brightness of acpi_video0
systemd-fsck@dev-sda3.service         loaded active exited  File System Check on /dev/sda3
systemd-journald.service              loaded active running Journal Service
systemd-logind.service                loaded active running Login Service
systemd-modules-load.service          loaded active exited  Load Kernel Modules
systemd-random-seed.service           loaded active exited  Load/Save Random Seed
systemd-remount-fs.service            loaded active exited  Remount Root and Kernel File Systems
systemd-sysctl.service                loaded active exited  Apply Kernel Variables
systemd-tmpfiles-setup-dev.service    loaded active exited  Create static device nodes in /dev
systemd-tmpfiles-setup.service        loaded active exited  Recreate Volatile Files and Directories
systemd-udev-trigger.service          loaded active exited  udev Coldplug all Devices
systemd-udevd.service                 loaded active running udev Kernel Device Manager
systemd-update-utmp.service           loaded active exited  Update UTMP about System Reboot/Shutdown
systemd-user-sessions.service         loaded active exited  Permit User Sessions
systemd-vconsole-setup.service        loaded active exited  Setup Virtual Console
upower.service                        loaded active running Daemon for power management
user@1000.service                     loaded active running User Manager for 1000

LOAD   = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB    = The low-level unit activation state, values depend on unit type.

24 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.

Offline

#8 2014-02-17 10:40:41

Rexilion
Member
Registered: 2013-12-23
Posts: 784

Re: [S]Netctl-auto. Default route resets after physical interface restart.

Try to enable / disable the service manually. Do this without enabling the service file in systemd and under two conditions:

- without enabling/disabling the rfkill switch
- with enabling/disabling the rfkill switch

I have the feeling the rfkill is doing something the scripts are not expecting.


fs/super.c : "Self-destruct in 5 seconds.  Have a nice day...\n",

Offline

#9 2014-02-17 11:27:33

actionless
Member
Registered: 2014-01-03
Posts: 15

Re: [S]Netctl-auto. Default route resets after physical interface restart.

Try to enable / disable the service manually. Do this without enabling the service file in systemd and under two conditions

sorry, i little bit confused what exactly i need to do there. can u please rephrase it more verbosely?

Offline

#10 2014-02-17 11:44:37

Rexilion
Member
Registered: 2013-12-23
Posts: 784

Re: [S]Netctl-auto. Default route resets after physical interface restart.

Sure:

  • Prepare for test:

    systemctl disable netctl-auto@wlp12s0.service
    systemctl start netctl-auto@wlp12s0.service
  • Test 1:

    systemctl stop netctl-auto@wlp12s0.service
    sleep 10s
    systemctl start netctl-auto@wlp12s0.service

    Does internet work? Is the route added?

  • Test 2:

    systemctl stop netctl-auto@wlp12s0.service

    # disable with switch as well
    # wait 10 seconds

    systemctl start netctl-auto@wlp12s0.service

    Does internet work? Is the route added?

  • Cleanup, let's undo what we did:

    systemctl enable netctl-auto@wlp12s0.service

Last edited by Rexilion (2014-02-17 11:46:04)


fs/super.c : "Self-destruct in 5 seconds.  Have a nice day...\n",

Offline

#11 2014-02-17 16:42:06

actionless
Member
Registered: 2014-01-03
Posts: 15

Re: [S]Netctl-auto. Default route resets after physical interface restart.

Thanks for explanation, i was confused because u asked to enable/disable so i thought u mean to literally enable/disable unit via systemctl smile

So both tests are passing and it looks like i figured out what's wrong -- the timing.
When i tried to reproduce my problem but adding additional 10 seconds between toggling rfkill switch -- all works as intended.

Also i tried to stop/start (not restart) unit without waiting 10 seconds -- and it works for me too.

I suspect the problem was caused by that what route table wasn't cleaned up in time when using rfkill too fast and existed records there somehow disturbing to add new right ones.


So in my case i see the possible solution to drop handling rfkill from BIOS and use systemctl stop/start netctl-auto to turn on/off my wifi.
Thank you a lot for your assistance!

Last edited by actionless (2014-02-17 16:44:09)

Offline

#12 2014-02-17 17:26:49

Rexilion
Member
Registered: 2013-12-23
Posts: 784

Re: [S]Netctl-auto. Default route resets after physical interface restart.

Maybe you should open a bugreport about this on the ArchLinux bugreport system (netctl is Arch specific I think). It could be that the kernel is taking the rfkill switch more literally than the netctl scripts expect. Furthermore, you might want to look at dhcp timeout tunables if you want to dig further.

Good job though!


fs/super.c : "Self-destruct in 5 seconds.  Have a nice day...\n",

Offline

#13 2014-02-18 10:30:34

actionless
Member
Registered: 2014-01-03
Posts: 15

Re: [S]Netctl-auto. Default route resets after physical interface restart.

just read releasenotes for systemd 209 and so i noticed what systemd already have systemd-rfkill unit now smile
so it looks like i should dig deeper into it after the update

Last edited by actionless (2014-02-18 10:51:27)

Offline

#14 2014-02-18 19:07:00

Rexilion
Member
Registered: 2013-12-23
Posts: 784

Re: [S]Netctl-auto. Default route resets after physical interface restart.

Keep us updated. SystemD is under development as we speak. Furthermore, it has also gained his own network management subsystem as well. Don't know if it's enabled or already available.


fs/super.c : "Self-destruct in 5 seconds.  Have a nice day...\n",

Offline

#15 2014-02-18 21:05:19

actionless
Member
Registered: 2014-01-03
Posts: 15

Re: [S]Netctl-auto. Default route resets after physical interface restart.

Rexilion wrote:

it has also gained his own network management subsystem as well. Don't know if it's enabled or already available.

They promised it in 209 too. But it said there:

It is capable of bringing up bridges, VLANs, and bonding. Currently, no hook-ups for interactive network configuration are provided.

Offline

Board footer

Powered by FluxBB