Refactor network configuration to use uppercase MAC addresses and update IP settings

This commit is contained in:
Ing 2024-09-17 12:28:22 +08:00
parent 1e2a58b37f
commit 55fe8f198d
2 changed files with 11 additions and 13 deletions

View File

@ -91,11 +91,11 @@ if [ ! "LOCALBUILD" = "${LOADER_DISK}" ]; then
MACR="$(cat /sys/class/net/${ETH}/address 2>/dev/null | sed 's/://g')" MACR="$(cat /sys/class/net/${ETH}/address 2>/dev/null | sed 's/://g')"
IPR="$(readConfigKey "network.${MACR}" "${USER_CONFIG_FILE}")" IPR="$(readConfigKey "network.${MACR}" "${USER_CONFIG_FILE}")"
if [ -n "${IPR}" ]; then if [ -n "${IPR}" ]; then
IFS='/' read -r -a IPRA <<<"$IPR" IFS='/' read -r -a IPRA <<<"${IPR}"
ip addr flush dev $ETH ip addr flush dev ${ETH}
ip addr add ${IPRA[0]}/${IPRA[1]:-"255.255.255.0"} dev $ETH ip addr add ${IPRA[0]}/${IPRA[1]:-"255.255.255.0"} dev ${ETH}
if [ -n "${IPRA[2]}" ]; then if [ -n "${IPRA[2]}" ]; then
ip route add default via ${IPRA[2]} dev $ETH ip route add default via ${IPRA[2]} dev ${ETH}
fi fi
if [ -n "${IPRA[3]:-${IPRA[2]}}" ]; then if [ -n "${IPRA[3]:-${IPRA[2]}}" ]; then
sed -i "/nameserver ${IPRA[3]:-${IPRA[2]}}/d" /etc/resolv.conf sed -i "/nameserver ${IPRA[3]:-${IPRA[2]}}/d" /etc/resolv.conf

View File

@ -123,8 +123,8 @@ function modelMenu() {
fi fi
echo -n "" >"${TMP_PATH}/modellist" echo -n "" >"${TMP_PATH}/modellist"
echo "${MJ}" | jq -c '.[]' | while read -r item; do echo "${MJ}" | jq -c '.[]' | while read -r item; do
name=$(echo "$item" | jq -r '.name') name=$(echo "${item}" | jq -r '.name')
arch=$(echo "$item" | jq -r '.arch') arch=$(echo "${item}" | jq -r '.arch')
echo "${name} ${arch}" >>"${TMP_PATH}/modellist" echo "${name} ${arch}" >>"${TMP_PATH}/modellist"
done done
@ -1378,8 +1378,7 @@ function customDTS() {
while true; do while true; do
[ -f "${USER_UP_PATH}/${MODEL}.dts" ] && CUSTOMDTS="Yes" || CUSTOMDTS="No" [ -f "${USER_UP_PATH}/${MODEL}.dts" ] && CUSTOMDTS="Yes" || CUSTOMDTS="No"
DIALOG --title "$(TEXT "Custom DTS")" \ DIALOG --title "$(TEXT "Custom DTS")" \
--default-item ${NEXT} --menu "$(TEXT "Choose a option")" 0 0 0 \ --default-item ${NEXT} --menu "$(TEXT "Custom dts: ") ${CUSTOMDTS}" 0 0 0 \
% "$(TEXT "Custom dts: ") ${CUSTOMDTS}" \
u "$(TEXT "Upload dts file")" \ u "$(TEXT "Upload dts file")" \
d "$(TEXT "Delete dts file")" \ d "$(TEXT "Delete dts file")" \
i "$(TEXT "Edit dts file")" \ i "$(TEXT "Edit dts file")" \
@ -1387,7 +1386,6 @@ function customDTS() {
2>${TMP_PATH}/resp 2>${TMP_PATH}/resp
[ $? -ne 0 ] && return [ $? -ne 0 ] && return
case "$(cat ${TMP_PATH}/resp)" in case "$(cat ${TMP_PATH}/resp)" in
%) ;;
u) u)
if ! tty 2>/dev/null | grep -q "/dev/pts"; then #if ! tty 2>/dev/null | grep -q "/dev/pts" || [ -z "${SSH_TTY}" ]; then if ! tty 2>/dev/null | grep -q "/dev/pts"; then #if ! tty 2>/dev/null | grep -q "/dev/pts" || [ -z "${SSH_TTY}" ]; then
MSG="" MSG=""
@ -1518,7 +1516,7 @@ function setStaticIP() {
for ETH in ${ETHX}; do for ETH in ${ETHX}; do
MACR="$(cat /sys/class/net/${ETH}/address 2>/dev/null | sed 's/://g')" MACR="$(cat /sys/class/net/${ETH}/address 2>/dev/null | sed 's/://g')"
IPR="$(readConfigKey "network.${MACR}" "${USER_CONFIG_FILE}")" IPR="$(readConfigKey "network.${MACR}" "${USER_CONFIG_FILE}")"
IFS='/' read -r -a IPRA <<<"$IPR" IFS='/' read -r -a IPRA <<<"${IPR}"
MSG="$(printf "$(TEXT "Set to %s: (Delete if empty)")" "${ETH}(${MACR})")" MSG="$(printf "$(TEXT "Set to %s: (Delete if empty)")" "${ETH}(${MACR})")"
while true; do while true; do
@ -1537,10 +1535,10 @@ function setStaticIP() {
if [ -z "${address}" ]; then if [ -z "${address}" ]; then
deleteConfigKey "network.${MACR}" "${USER_CONFIG_FILE}" deleteConfigKey "network.${MACR}" "${USER_CONFIG_FILE}"
else else
ip addr flush dev $ETH ip addr flush dev ${ETH}
ip addr add ${address}/${netmask:-"255.255.255.0"} dev $ETH ip addr add ${address}/${netmask:-"255.255.255.0"} dev ${ETH}
if [ -n "${gateway}" ]; then if [ -n "${gateway}" ]; then
ip route add default via ${gateway} dev $ETH ip route add default via ${gateway} dev ${ETH}
fi fi
if [ -n "${dnsname:-${gateway}}" ]; then if [ -n "${dnsname:-${gateway}}" ]; then
sed -i "/nameserver ${dnsname:-${gateway}}/d" /etc/resolv.conf sed -i "/nameserver ${dnsname:-${gateway}}/d" /etc/resolv.conf