Subversion Repositories My Stuff

Rev

View as "text/plain" | Blame | Last modification | View Log | RSS feed

#!/bin/bash

config_ip() {
        cd /tmp/${USER}/setup.opts
        dialog --title "Konfiguracja TCP/IP" --menu "Mozesz wykorzystac DHCP do automatycznej konfiguracji interfejsu sieciowego lub skonfigurowac adres IP recznie. Wyberz odpowiednia opcje:" 20 60 7 1 "Wykorzystaj DHCP do automaycznej konfiguracji" 2 "Wprowadz adresacje IP recznie" 2> ${iface}.${USER}.DHCP
        DHCP=$(tail -n 1 ${iface}.${USER}.DHCP)
        case ${DHCP} in
                1)
                        sudo /sbin/ip addr flush dev ${iface}
                    sudo /sbin/dhcpcd -k ${iface}
                    sudo /sbin/dhcpcd -n -t 10 -h $(hostname) ${iface} &
                ;;
                2)
                        dialog --title "Adres IP" --inputbox "Wprowadz adres IP dla domyslnego interfejsu ${iface}:" 20 50 "192.168.1.1" 2> ${iface}.${USER}.IP
                        IP=$(tail -n 1 ${iface}.${USER}.IP)
                        BC_TEMP=$(echo $IP|cut -d . -f 1).$(echo $IP|cut -d . -f 2).$(echo $IP|cut -d . -f 3).255
                        dialog --title "Adres Rozgloszeniowy" --inputbox "Wprowadz adres Rozgloszeniowy dla domyslnego interfejsu ${iface}:" 20 50 "${BC_TEMP}" 2> ${iface}.${USER}.BC
                        BROADCAST=$(tail -n 1 ${iface}.${USER}.BC)
                        dialog --title "Maska Sieci" --inputbox "Wprowadz Maske Sieci dla domyslnego interfejsu ${iface}" 20 50 "255.255.255.0" 2> ${iface}.${USER}.NM
                        NETMASK=$(tail -n 1 ${iface}.${USER}.NM)
                        dialog --title "Brama/Router" --inputbox "Wprowadz adres Bramy/Routera ${iface}:" 20 50 2> ${iface}.${USER}.GW
                        GATEWAY=$(tail -n 1 ${iface}.${USER}.GW)
                        dialog --title "Serwer DNS" --inputbox "Wprowadz adres IP serwera DNS" 20 50 2> ${iface}.${USER}.DNS
                        DNS=$(tail -n 1 ${iface}.${USER}.DNS)
                        sudo /sbin/ip addr flush dev ${iface}
                        sudo /sbin/ifconfig ${iface} ${IP} broadcast ${BROADCAST} netmask ${NETMASK}
                        if [ -n "${GATEWAY}" ]
                        then
                                sudo /sbin/route add default gw ${GATEWAY} dev ${iface} netmask 0.0.0.0 metric 1
                        fi
                        if [ -n "${DNS}" ]
                        then
                                dialog --title "Domena Wyszukiwania" --inputbox "Wprowadz domene wyszukiwania (Wcisnij Enter aby pominac:)" 20 50 2> ${iface}.${USER}.SUFFIX
                                SUFFIX=$(tail -n 1 ${iface}.${USER}.SUFFIX)
                                echo "nameserver ${DNS}" > dns-config
                                if [ -n "${SUFFIX}" ]
                                then
                                        echo "search ${SUFFIX}" >> dns-config
                                fi
                                cat dns-config | sudo tee /etc/resolv.conf > /dev/null
                        fi
                ;;
        esac
}

write_net_conf() {
        cd /tmp/${USER}/setup.opts
        echo "" > sudo /usr/bin/tee /etc/conf.d/net
        echo "# Konfiguracja sieci zapisana przed net-setup-serwis" > net-config
        DHCP=$(tail -n 1 ${iface}.${USER}.DHCP)
        case ${DHCP} in
                1)
                        echo "config_${iface}=\"dhcp\"" >> net-config
                        echo "fallback_${iface}=\"apipa\"" >> net-config
                        cat net-config | sudo tee /etc/conf.d/net > /dev/null
                ;;
                2)
                        IP=$(tail -n 1 ${iface}.${USER}.IP)
                        BROADCAST=$(tail -n 1 ${iface}.${USER}.BC)
                        NETMASK=$(tail -n 1 ${iface}.${USER}.NM)
                        GATEWAY=$(tail -n 1 ${iface}.${USER}.GW)
                        if [ -n "${IP}" -a -n "${BROADCAST}" -a -n "${NETMASK}" ]
                        then
                                echo "config_${iface}=\"${IP} netmask ${NETMASK} brd ${BROADCAST}\"" >> net-config
                                if [ -n "${GATEWAY}" ]
                                then
                                        echo "routes_${iface}=\"default via ${GATEWAY}\"" >> net-config
                                fi
                                echo "fallback_${iface}=\"apipa\"" >> net-config
                                cat net-config | sudo tee /etc/conf.d/net > /dev/null
                        fi
                ;;
        esac
}