Я написал простой скрипт, позволяющий пользователю вручную настраивать свой IP-адрес и DNS-сервер.
DNS-серверы изменяются путем создания нового файла /etc/resolv.conf
со строками, введенными пользователем, например, файл может выглядеть так:
nameserver 12.34.56.78
nameserver 12.34.56.79
однако после перезагрузки эти изменения, похоже, не работают и использование DNS не удается.
Я все еще могу пропинговать IP-адрес, но попытка пропинговать веб-сайты не удалась.
Ниже приведен полный сценарий, дайте знать, что вы думаете, проблема может быть.
#!/bin/bash
# wipes any corrent set up
> /etc/network/interfaces
echo "Automatic DHCP or Manual?,(D/M) followed by [ENTER]:"
read network
if [ $network == "D" ]; then
echo "auto lo" >> /etc/network/interfaces
echo "iface lo inet loopback" >> /etc/network/interfaces
echo "iface eth0 inet dhcp" >> /etc/network/interfaces
echo "iface default inet dhcp" >> /etc/network/interfaces
echo "Network set up!"
exit 0
fi
if [ $network == "M" ]; then
echo "Enter IP address (e.g 192.168.0.7), followed by [ENTER]:"
read address
echo "Enter Netmask (e.g 255.255.255.0, followed by [ENTER]:"
read mask
echo "Enter router IP (e.g 192.168.0.1), followed by [ENTER]:"
read router
echo "Enter first DNS server (e.g 8.8.8.8), followed by [ENTER]:"
read dns1
echo "Enter second DNS server (e.g 8.8.8.8), followed by [ENTER]:"
read dns2
echo "auto lo" >> /etc/network/interfaces
echo "iface lo inet loopback" >> /etc/network/interfaces
echo "iface eth0 inet static" >> /etc/network/interfaces
echo " address $address" >> /etc/network/interfaces
echo " netmask $mask" >> /etc/network/interfaces
echo " gateway $router" >> /etc/network/interfaces
echo "iface default inet dhcp" >> /etc/network/interfaces
> /etc/resolv.conf
echo "nameserver $dns1" >> /etc/resolv.conf
echo "nameserver $dns2" >> /etc/resolv.conf
echo "Network set up!"
exit 0
fi
echo "ERROR: you do not enter D or M";
exit 0
Сценарий был основан на информации для ручной настройки, найденной здесь http://wiki.debian.org/NetworkConfiguration
Когда используется автоматический DHCP, /etc/resolv.conf содержит:
domain zyxel.com
search zyxel.com
nameserver 192.168.1.1