Photomk. Подвал

всякое о всяком

Апр
8

3G + nat + dns relay

Filed Under Linux

Не так давно была необходимость настроить интернет от Интертелекома. Использовался USB модем Sierra 595U.
Сперва проверяем распознался ли модем:

tail -f /var/log/messages

Дальше производим настройку дозвона. Можно использовать как pppconfig, так и wvdial.
wvdial.conf

[Modem0]
Modem=/dev/ttyUSB0
Baud=115200
SetVolume=0
Dial Command =ATDT
init1=ATZ
init2=AT+CRM=1
FlowControl=Hardware (CRTSCTS)
[Dialer IT]
Username=IT
Password=IT
Phone=#777
Stupid Mode=1
Inherits=Modem0
Check Def Route

Ниже привожу настройку nat для iptables. Скрипт тривиальный, но нужно учесть,что вначале сбрасываются правила iptbales. Можно активировать его при поднятии интерфейса.

#!/bin/bash
iptables --flush
iptables --table nat --flush
iptables --delete-chain
iptables --table nat --delete-chain

echo 1 > /proc/sys/net/ipv4/ip_forward

internal=eth0
external=ppp0
/sbin/iptables -t nat -A POSTROUTING -o ${external} -j MASQUERADE
/sbin/iptables -A FORWARD -i ${external} -o ${internal} -m state --state RELATED,ESTABLISHED -j ACCEPT
/sbin/iptables -A FORWARD -i ${internal} -o ${external} -j ACCEPT

Можно проверить как это работает, подсоединив вторую машину через сеть и пропинговать внешний хост по IP адресу.
В дальнейшем сделаем проброс DNS запросов. Используется bind.
/etc/bind/named.conf


options {
directory “/var/cache/bind”;
allow-query { any; };
allow-recursion { any; };
query-source address * port 53;

forwarders {
172.17.0.5;
};

auth-nxdomain no;
listen-on-v6 { any; };
};