====== NAT + DHCP + DNS за пару минут ======
===== Имеем =====
* Ноутбук с Ubuntu 11.10 и беспроводным сетевым адаптером
* Беспроводной интернет
* Комьютер с Ethernet-интерфейсом
===== Задача =====
* Получить с компьютера доступ в интернет
===== Решение =====
* Первый скрипт установит необходимые пакеты, а именно dnsmasq, которвый выступает в качестве dns/dhcp-сервера.
#!/bin/bash
# Install dns/dhcp server
apt-get install dnsmasq
# Stop installed service
service dnsmasq stop
# Disable autostart on boot
update-rc.d dnsmasq disable
* И второй скрипт, который перводит ноутбук в режим роутера и обратно.
#!/bin/bash
INT=eth0
EXT=wlan0
INT_IP=192.168.2.2
INT_RANGE=192.168.2.10,192.168.2.50
# Start
ifconfig $INT $INT_IP
sysctl net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o $EXT -j MASQUERADE
dnsmasq -d -zi $INT -F $INT_RANGE -C /dev/null -l /tmp/dnsmasq.leases
# Stop
iptables -D POSTROUTING -t nat -o $EXT -j MASQUERADE
sysctl net.ipv4.ip_forward=0
* Протестировано в Ubuntu 11.10, но может быть использовано в любом дистрибутиве, в котором доступен для установки dnsmasq.
{{tag>ubuntu scripting nat dhcp dns}}