mirror of
https://github.com/linuxkit/linuxkit.git
synced 2025-07-21 18:11:35 +00:00
Merge pull request #952 from justincormack/mtu-dhcpcd
Add the MTU script for dhcpcd
This commit is contained in:
commit
95473adf67
38
alpine/usr/lib/dhcpcd/dhcpcd-hooks/10-mtu
Normal file
38
alpine/usr/lib/dhcpcd/dhcpcd-hooks/10-mtu
Normal file
@ -0,0 +1,38 @@
|
||||
# Configure the MTU for the interface
|
||||
|
||||
mtu_dir="$state_dir/mtu"
|
||||
|
||||
set_mtu()
|
||||
{
|
||||
local mtu=$1
|
||||
|
||||
if [ -w /sys/class/net/$interface/mtu ]; then
|
||||
echo "$mtu" >/sys/class/net/$interface/mtu
|
||||
else
|
||||
ifconfig "$interface" mtu "$mtu"
|
||||
fi
|
||||
}
|
||||
|
||||
if [ "$reason" = PREINIT -a -e "$mtu_dir/$interface" ]; then
|
||||
rm "$mtu_dir/$interface"
|
||||
elif [ -n "$new_interface_mtu" ] && $if_up; then
|
||||
# The smalled MTU dhcpcd can work with is 576
|
||||
if [ "$new_interface_mtu" -ge 576 ]; then
|
||||
if set_mtu "$new_interface_mtu"; then
|
||||
syslog info "$interface: MTU set to $new_interface_mtu"
|
||||
# Save the MTU so we can restore it later
|
||||
if [ ! -e "$mtu_dir/$interface" ]; then
|
||||
mkdir -p "$mtu_dir"
|
||||
echo "$ifmtu" > "$mtu_dir/$interface"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
elif [ -e "$mtu_dir/$interface" ]; then
|
||||
if $if_up || $if_down; then
|
||||
# No MTU in this state, so restore the prior MTU
|
||||
mtu=$(cat "$mtu_dir/$interface")
|
||||
syslog info "$interface: MTU restored to $mtu"
|
||||
set_mtu "$mtu"
|
||||
rm "$mtu_dir/$interface"
|
||||
fi
|
||||
fi
|
Loading…
Reference in New Issue
Block a user