# This is the main configuration file for ifcron # # Every line is another task and everything after a # is ignored, so you can # write comments. # # Please keep in mind: # * tasks are started as root without environment # * you have to use absolute paths # * ifcron will start a task even if the same is already running, you have # to lock on your own # * please keep conditions simple to not trigger bugs ;) # Conditions # A single condition has always the following form: # . # # "interface" can be any name of an interface, connected or not. Conditions # using non-available interface evaluate to false, except the negation-modifier # is used. # # "property" can be a single property of those defined for the type of the # interface. Some useful properties are "ipv4", "ipv6" for IP addresses or # "ssid" for wireless interfaces. # # "operator" is one of the following: # "=" the property is exact the same as given # "~" the ip is in the given network (given in /prefix notation) # There is also the negation modifier "!", which can be written before the # operator an will negate the result. # # "expected" is what you want to compare the property to, for example an # ip address or a network. # # Intervals # You can specify intervals for tasks, such as every day or all 3 hours. # # Below you can find some examples. # condition interval command #enp8s0.ipv4 ~ 172.20.239.128/26 1d /root/bin/backup-to-pc #enp8s0.ipv4 ~ 172.20.239.128/26 - /bin/systemctl stop openvpn@public-network #enp8s0.ipv4 !~ 172.20.239.128/26 - /bin/systemctl start openvpn@public-network