кому интересно - вот что делаем
на линуксе делаем
passw - пароль, essid_name - имя сети, channel_name - номер свободного канала
iwconfig interface mode Ad-Hock
iwconfig interface key s:passw
iwconfig interface essid essid_name
iwconfig interface channel channel_name
дальше поднимаем интерфейс
ifconfig interface 192.168.0.1
Теперь он виден в списке сетей таблетки - подключаемся к нему.
Заходим в рутовую консоль (можно через ssh, можно прям на таблектке)
делаем
ifconfig
оттуда выдираем интерфейс/псевдоинтерфейс.
обычно это - wlan1:0
пишем
ifconfig wlan1:0 192.168.0.2
теперь надо обновить dns -
добавляем в /etc/resolv.conf на таблеке тоже самое, что и в /etc/resolv.conf на ноуте.
теперь днс у нас прописал.
теперь добавляем роуты на таблеке -
route add default gw 192.168.0.1
Осталось настроить маршрутизацию на линукс десктопе -
пишем вот это
#!/bin/sh
#---------------------------------------------------------------#
/sbin/modprobe ip_tables
/sbin/modprobe ip_conntrack
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_mangle
/sbin/modprobe iptable_nat
/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
#--------------------------------------------------------------#
IPTABLES="/sbin/iptables"
IFCONFIG="/sbin/ifconfig"
#-------------------------------------------------------------#
KPK_IP="192.168.0.2"
#-------------------------------------------------------------#
INT_IFACE="eth2"
INT_IP=`$IFCONFIG $INT_IFACE | grep inet | cut -d : -f 2 | cut -d \ -f 1`
#------------------------------------------------------------#
EXT_IFACE="eth0"
EXT_IP=`$IFCONFIG $EXT_IFACE | grep inet | cut -d : -f 2 | cut -d \ -f 1`
#------------------------------------------------------------#
LO_IFACE="lo"
LO_IP="127.0.0.1"
TCP_PORTS="53"
UDP_PORTS="53"
#------------------------------------------------------------#
StartService() {
$IPTABLES -F
$IPTABLES -t nat -F
$IPTABLES -t mangle -F
$IPTABLES -X
$IPTABLES -t nat -X
$IPTABLES -t mangle -X
#-----------------------------------------------------------#
$IPTABLES -N KPK_IN
$IPTABLES -N KPK_OUT
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -P FORWARD DROP
#------------------------------------------------------------#
#------------------------------------------------------------#
$IPTABLES -A INPUT -i $EXT_IFACE -p icmp --icmp-type echo-reply -j ACCEPT
$IPTABLES -A INPUT -i $EXT_IFACE -p icmp --icmp-type destination-unreachable -j ACCEPT
$IPTABLES -A INPUT -i $EXT_IFACE -p icmp --icmp-type echo-request -j ACCEPT
$IPTABLES -A INPUT -i $EXT_IFACE -p icmp --icmp-type echo-request -m limit --limit 1/second -j ACCEPT
#------------------------------------------------------------#
$IPTABLES -t mangle -A PREROUTING -i $INT_IFACE -j TTL --ttl-inc 1
#------------------------------------------------------------#
$IPTABLES -A INPUT -m state --state INVALID -j DROP
$IPTABLES -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
#------------------------------------------------------------#
$IPTABLES -A INPUT -i $EXT_IFACE -p tcp --dport 21 -j ACCEPT
$IPTABLES -A INPUT -i $EXT_IFACE -p tcp --dport 22 -j ACCEPT
$IPTABLES -A INPUT -i $EXT_IFACE -p tcp --dport 6882 -j ACCEPT
$IPTABLES -A INPUT -i $EXT_IFACE -p tcp --dport 3306 -j ACCEPT
$IPTABLES -A INPUT -i $LO_IFACE -p tcp --dport 3306 -j ACCEPT
$IPTABLES -A INPUT -i $EXT_IFACE -p tcp --dport 6881 -j ACCEPT
$IPTABLES -A INPUT -i $EXT_IFACE -p tcp --dport 80 -j ACCEPT
$IPTABLES -A INPUT -p ALL -s $KPK_IP -j ACCEPT
$IPTABLES -A INPUT -i $INT_IFACE -p udp --dport 0:35000 -j ACCEPT # inbound traceroute
$IPTABLES -A INPUT -i $INT_IFACE -p tcp --dport 0:64000 -j ACCEPT # passive ftp
$IPTABLES -A INPUT -p ALL -i $EXT_IFACE -j DROP
$IPTABLES -A INPUT -i $INT_IFACE -p udp --dport 0:35000 -j ACCEPT # inbound traceroute
$IPTABLES -A INPUT -i $INT_IFACE -p tcp --dport 0:64000 -j ACCEPT # passive ftp
$IPTABLES -A INPUT -p ALL -i $EXT_IFACE -j DROP
#-------------------------------------------------------------#
#-------------------------------------------------------------#
$IPTABLES -A OUTPUT -o $LO_IFACE -j ACCEPT
$IPTABLES -A OUTPUT -s $KPK_IP -j ACCEPT
# $IPTABLES -A OUTPUT -o $EXT_IFACE -j ACCEPT
#-------------------------------------------------------------#
# Forward
#-------------------------------------------------------------#
$IPTABLES -A FORWARD -s $KPK_IP -j KPK_OUT
$IPTABLES -A FORWARD -d $KPK_IP -j KPK_IN
#--------------------------------------------------------------#
$IPTABLES -A FORWARD -p ALL -s $KPK_IP -j ACCEPT
$IPTABLES -A FORWARD -p ALL -d $KPK_IP -j ACCEPT
# $IPTABLES -A FORWARD -i $EXT_IFACE -o $INT_IFACE -m state --state ESTABLISHED,RELATED -j ACCEPT
# $IPTABLES -A FORWARD -i $INT_IFACE -o $EXT_IFACE -j ACCEPT
$IPTABLES -A FORWARD -j DROP
$IPTABLES -t nat -A POSTROUTING -p ALL -s $KPK_IP -j SNAT --to-source $EXT_IP
echo $EXT_IP $EXT_IFACE $INT_NET $INT_IP
}
StopService() {
#----------------------------------------------------------------------------------------------------------------
# Clean chains
#----------------------------------------------------------------------------------------------------------------
$IPTABLES -F
$IPTABLES -t nat -F
$IPTABLES -t mangle -F
$IPTABLES -X
$IPTABLES -t nat -X
$IPTABLES -t mangle -X
$IPTABLES -P INPUT ACCEPT
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -P FORWARD ACCEPT
echo "0" > /proc/sys/net/ipv4/ip_forward
}
RestartService() {
StopService
StartService
}
case "$1" in
'start')
StartService ;;
'stop')
StopService ;;
'restart')
RestartService ;;
*)
echo "usage $0 start|stop|restart"
esac
Понятно, что линукс ядро должно быть собрано с поддержкой iptables + должны стоять iptables'ы
Неактивен