config 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. #!/bin/sh
  2. echo "DEVICE=$interface" >> /run/net-$interface.conf
  3. case "$reason" in
  4. BOUND)
  5. echo "PROTO=dhcp" >> /run/net-$interface.conf
  6. echo "IPV4PROTO=dhcp" >> /run/net-$interface.conf
  7. echo "IPV4ADDR=$new_ip_address" >> /run/net-$interface.conf
  8. echo "IPV4NETMASK=$new_subnet_mask" >> /run/net-$interface.conf
  9. echo "IPV4BROADCAST=$new_broadcast_address" >> /run/net-$interface.conf
  10. echo "IPV4GATEWAY=$new_routers" >> /run/net-$interface.conf
  11. echo "IPV4DNS0=$new_domain_name_servers" >> /run/net-$interface.conf
  12. echo "ROOTSERVER=$new_routers" >> /run/net-$interface.conf
  13. if [ -n "$new_domain_search"]; then
  14. echo "DOMAINSEARCH=$new_domain_search" >> /run/net-$interface.conf
  15. fi
  16. ;;
  17. BOUND6)
  18. echo "IPV6PROTO=dhcp6" >> /run/net-$interface.conf
  19. echo "IPV6ADDR=$new_ip6_address" >> /run/net-$interface.conf
  20. echo "IPV6NETMASK=$new_ip6_prefixlen" >> /run/net-$interface.conf
  21. echo "IPV6DNS0=$new_dhcp6_name_servers" >> /run/net-$interface.conf
  22. if [ -n "$new_dhcp6_domain_search"]; then
  23. echo "IPV6DOMAINSEARCH=$new_dhcp6_domain_search" >> /run/net-$interface.conf
  24. fi
  25. ;;
  26. esac
  27. if [ -n "$host_name"]; then
  28. echo "HOSTNAME=$new_host_name" >> /run/net-$interface.conf
  29. fi
  30. if [ -n "$domain_name"]; then
  31. echo "DNSDOMAIN=$new_domain_name" >> /run/net-$interface.conf
  32. fi
  33. for prefix in '' 'cur_' 'new_' 'old_'; do
  34. # loop over the DHCP variables passed to dhclient-script
  35. for basevar in reason interface medium alias_ip_address \
  36. ip_address host_name network_number subnet_mask \
  37. broadcast_address routers static_routes \
  38. rfc3442_classless_static_routes \
  39. domain_name domain_search domain_name_servers \
  40. netbios_name_servers netbios_scope \
  41. ntp_servers \
  42. ip6_address ip6_prefix ip6_prefixlen \
  43. dhcp6_domain_search dhcp6_name_servers ; do
  44. var="${prefix}${basevar}"
  45. eval "content=\$$var"
  46. # show only variables with values set
  47. if [ -n "${content}" ]; then
  48. echo "$var='${content}'" >> /run/net-$interface.conf
  49. fi
  50. done
  51. done