Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
29 | kardasa | 1 | #!/bin/bash |
2 | |||
3 | config_ip() { |
||
4 | cd /tmp/${USER}/setup.opts |
||
5 | 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 |
||
6 | DHCP=$(tail -n 1 ${iface}.${USER}.DHCP) |
||
7 | case ${DHCP} in |
||
8 | 1) |
||
9 | sudo /sbin/ip addr flush dev ${iface} |
||
10 | sudo /sbin/dhcpcd -k ${iface} |
||
11 | sudo /sbin/dhcpcd -n -t 10 -h $(hostname) ${iface} & |
||
12 | ;; |
||
13 | 2) |
||
14 | dialog --title "Adres IP" --inputbox "Wprowadz adres IP dla domyslnego interfejsu ${iface}:" 20 50 "192.168.1.1" 2> ${iface}.${USER}.IP |
||
15 | IP=$(tail -n 1 ${iface}.${USER}.IP) |
||
16 | BC_TEMP=$(echo $IP|cut -d . -f 1).$(echo $IP|cut -d . -f 2).$(echo $IP|cut -d . -f 3).255 |
||
17 | dialog --title "Adres Rozgloszeniowy" --inputbox "Wprowadz adres Rozgloszeniowy dla domyslnego interfejsu ${iface}:" 20 50 "${BC_TEMP}" 2> ${iface}.${USER}.BC |
||
18 | BROADCAST=$(tail -n 1 ${iface}.${USER}.BC) |
||
19 | dialog --title "Maska Sieci" --inputbox "Wprowadz Maske Sieci dla domyslnego interfejsu ${iface}" 20 50 "255.255.255.0" 2> ${iface}.${USER}.NM |
||
20 | NETMASK=$(tail -n 1 ${iface}.${USER}.NM) |
||
21 | dialog --title "Brama/Router" --inputbox "Wprowadz adres Bramy/Routera ${iface}:" 20 50 2> ${iface}.${USER}.GW |
||
22 | GATEWAY=$(tail -n 1 ${iface}.${USER}.GW) |
||
23 | dialog --title "Serwer DNS" --inputbox "Wprowadz adres IP serwera DNS" 20 50 2> ${iface}.${USER}.DNS |
||
24 | DNS=$(tail -n 1 ${iface}.${USER}.DNS) |
||
25 | sudo /sbin/ip addr flush dev ${iface} |
||
26 | sudo /sbin/ifconfig ${iface} ${IP} broadcast ${BROADCAST} netmask ${NETMASK} |
||
27 | if [ -n "${GATEWAY}" ] |
||
28 | then |
||
29 | sudo /sbin/route add default gw ${GATEWAY} dev ${iface} netmask 0.0.0.0 metric 1 |
||
30 | fi |
||
31 | if [ -n "${DNS}" ] |
||
32 | then |
||
33 | dialog --title "Domena Wyszukiwania" --inputbox "Wprowadz domene wyszukiwania (Wcisnij Enter aby pominac:)" 20 50 2> ${iface}.${USER}.SUFFIX |
||
34 | SUFFIX=$(tail -n 1 ${iface}.${USER}.SUFFIX) |
||
35 | echo "nameserver ${DNS}" > dns-config |
||
36 | if [ -n "${SUFFIX}" ] |
||
37 | then |
||
38 | echo "search ${SUFFIX}" >> dns-config |
||
39 | fi |
||
40 | cat dns-config | sudo tee /etc/resolv.conf > /dev/null |
||
41 | fi |
||
42 | ;; |
||
43 | esac |
||
44 | } |
||
45 | |||
46 | write_net_conf() { |
||
47 | cd /tmp/${USER}/setup.opts |
||
48 | echo "" > sudo /usr/bin/tee /etc/conf.d/net |
||
49 | echo "# Konfiguracja sieci zapisana przed net-setup-serwis" > net-config |
||
50 | DHCP=$(tail -n 1 ${iface}.${USER}.DHCP) |
||
51 | case ${DHCP} in |
||
52 | 1) |
||
53 | echo "config_${iface}=\"dhcp\"" >> net-config |
||
54 | echo "fallback_${iface}=\"apipa\"" >> net-config |
||
55 | cat net-config | sudo tee /etc/conf.d/net > /dev/null |
||
56 | ;; |
||
57 | 2) |
||
58 | IP=$(tail -n 1 ${iface}.${USER}.IP) |
||
59 | BROADCAST=$(tail -n 1 ${iface}.${USER}.BC) |
||
60 | NETMASK=$(tail -n 1 ${iface}.${USER}.NM) |
||
61 | GATEWAY=$(tail -n 1 ${iface}.${USER}.GW) |
||
62 | if [ -n "${IP}" -a -n "${BROADCAST}" -a -n "${NETMASK}" ] |
||
63 | then |
||
64 | echo "config_${iface}=\"${IP} netmask ${NETMASK} brd ${BROADCAST}\"" >> net-config |
||
65 | if [ -n "${GATEWAY}" ] |
||
66 | then |
||
67 | echo "routes_${iface}=\"default via ${GATEWAY}\"" >> net-config |
||
68 | fi |
||
69 | echo "fallback_${iface}=\"apipa\"" >> net-config |
||
70 | cat net-config | sudo tee /etc/conf.d/net > /dev/null |
||
71 | fi |
||
72 | ;; |
||
73 | esac |
||
74 | } |