Имеется router на ubuntu 7.04, на нем же спутниковый тюнер, наземный канал ADSL, ч-з аппаратный рутер с NAT. #!/bin/sh 
### Укажите ниже интерфейс, через который Вы связываетесь с провайдером
EXTDEV="eth1" 
### Укажите ниже интерфейс, через который Linux-машина подключена к локальной сети. 
PPPOEDEV="eth0" 
### Укажите ниже сеть для PPPOE клиентов. 
INETWORKIP="192.168.2.0/255.255.255.0" 
EXTERNALIP=192.168.1.11
ENETWORKIP=$EXTERNALIP+"/255.255.255.255" 
INTERNALIP=192.168.2.1 
LOOPBACK="127.0.0.1" 
ANYWHERE="0.0.0.0/0" 
PORTS="1024:65535" 
INTDEV="ppp+"
/sbin/depmod -a
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_tables
/sbin/modprobe iptable_filter 
/sbin/modprobe iptable_mangle 
/sbin/modprobe iptable_nat 
/sbin/modprobe ipt_LOG 
/sbin/modprobe ipt_limit 
/sbin/modprobe ipt_MASQUERADE 
/sbin/modprobe ipt_owner 
/sbin/modprobe ipt_REJECT 
/sbin/modprobe ip_conntrack_ftp 
/sbin/modprobe ip_conntrack_irc 
/sbin/modprobe ip_nat_ftp 
/sbin/modprobe ip_nat_irc 
echo 1 > /proc/sys/net/ipv4/ip_forward 
echo 1 > /proc/sys/net/ipv4/tcp_syncookies 
for file in /proc/sys/net/ipv4/conf/*/rp_filter; do 
  echo 1 > $file 
done 
     
for file in /proc/sys/net/ipv4/conf/*/accept_redirects; do 
  echo 0 > $file 
done 
   
for file in /proc/sys/net/ipv4/conf/*/accept_source_route; do 
  echo 0 > $file 
done 
                     
/sbin/iptables -F 
/sbin/iptables -F -t nat 
/sbin/iptables - N ALLOW_ICMP 
/sbin/iptables - N ALLOW_PORTS 
/sbin/iptables - N CHECK_FLAGS 
/sbin/iptables - N DENY_PORTS 
/sbin/iptables - N DST_EGRESS 
/sbin/iptables - N KEEP_STATE 
/sbin/iptables - N SRC_EGRESS 
# По умолчанию все входящие пакеты сбрасываем 
/sbin/iptables -P INPUT DROP
/sbin/iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP 
/sbin/iptables -A INPUT -j ACCEPT -s $EXTERNALIP -d $ANYWHERE 
/sbin/iptables -A INPUT -j ACCEPT -s $ANYWHERE -d $ANYWHERE -I $INTDEV 
/sbin/iptables -A INPUT -j ACCEPT -s $ANYWHERE -d $ANYWHERE -i lo 
/sbin/iptables -A INPUT -j ACCEPT -s $ANYWHERE -d $ANYWHERE -i $EXTDEV -m state --state RELATED,ESTABLISHED 
/sbin/iptables -A INPUT -j ACCEPT -p icmp -s $ANYWHERE -d $ANYWHERE 
/sbin/iptables -A INPUT -j ACCEPT -p udp -s $INETWORKIP --sport 53 -d $ANYWHERE 
# По умолчанию все исходящие пакеты сбрасываем 
/sbin/iptables -P OUTPUT DROP 
/sbin/iptables -A OUTPUT -j ACCEPT -s $ANYWHERE -d $ANYWHERE -o $INTDEV 
/sbin/iptables -A OUTPUT -j ACCEPT -s $ANYWHERE -d $EXTERNALIP 
/sbin/iptables -A OUTPUT -j ACCEPT -s $ANYWHERE -d $ANYWHERE -o lo 
/sbin/iptables -A OUTPUT -j ACCEPT -s $ANYWHERE -d $ANYWHERE -o $EXTDEV -m state --state RELATED,ESTABLISHED 
/sbin/iptables -A OUTPUT -j ACCEPT -p udp -s $EXTERNALIP -d $ANYWHERE --dport 53 
/sbin/iptables -A OUTPUT -j ACCEPT -p icmp -s $ANYWHERE -d $ANYWHERE 
/sbin/iptables -A OUTPUT -j ACCEPT -s $ANYWHERE -d $ANYWHERE -o $EXTDEV -m state --state RELATED,ESTABLISHED 
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -A FORWARD -j ACCEPT -s $ANYWHERE -d $ANYWHERE -i $INTDEV 
/sbin/iptables -A FORWARD -j ACCEPT -p icmp -s $ANYWHERE -d $ANYWHERE -i $INTDEV 
## Маскарадинг клиентов 
/sbin/iptables -t nat -A POSTROUTING -j SNAT -s $INETWORKIP -d $ANYWHERE -o $EXTDEV --to $EXTERNALIP 
/sbin/iptables -t nat -A POSTROUTING -j MASQUERADE -s $INETWORKIP -d $ANYWHERE -o $EXTDEV 
## Запуск PPPOE-SERVER 
killall -w -9 pppoe-server 
/usr/sbin/pppoe-server -I $PPPOEDEV -L $INTERNALIP
При отключенном спутниковом канале все это работает. Если включаю вместо этого скрипта тоннель:
#!/bin/sh
/sbin/modprobe ipip
/sbin/modprobe ip_gre
/sbin/ip route add 80.81.208.66 via 192.168.1.1 src 192.168.1.11
/sbin/ip tunnel add gre1 mode gre local 192.168.1.11 remote 80.81.208.66
/sbin/ifconfig gre1 IPадресПодписки(серенький) netmask 255.255.255.255
/sbin/ip route add 1.1.1.1 dev gre1
/sbin/ip route del default
/sbin/ip route add default via 1.1.1.1 src IPадресПодписки
echo 1 > /proc/sys/net/ipv4/ip_forward
echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter
, то локально могу брать трафик со спутника, а раздать:
/sbin/iptables -t nat -A POSTROUTING -j SNAT -o gre1 --to IPадресПодписки
не получается - пингуется адрес подписки с клиента, и ничего более... :(. Как правильно сделать? Помогите пожалуйста, мозг уже плавится! :(
За реальный ip тарелочный провайдер просит денежку, но у меня есть уже реальный IP от наземного прова, нельзя ли обойтись без...?