The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Пакеты из подсети в обход NAT, !*! madi, 18-Дек-09, 11:30  [смотреть все]
Здравствуйте.

есть Debian 503. ядро - 2.6.26-2-686 в роли маршрутизатора, две сетевых карты.
подсеть 192.168.0.0/24 Windows 7
провайдер ТТК
проблема: некоторые пакеты из локальной сети идут в обход NAT
Прошу вас помочь решить данную проблему!

пример лога с комутатора провайдера:
Ethernet channel ETH 4 blocked, reason - wrong source IP (192.168.0.2 instead 94.251.38.193)

.......Firewall....

###########################################################################
#
# 1. Configuration options.
#

#
# 1.1 Internet Configuration.
#
INET_IP="94.251.38.193"
INET_IFACE="eth0"
#
# 1.1.1 DHCP
#
# 1.2 Local Area Network configuration.
#
# your LAN's IP range and localhost IP. /24 means to only use the first 24
# bits of the 32 bit IP adress. the same as netmask 255.255.255.0
#

LAN_IP="192.168.0.1"
LAN_IP_RANGE="192.168.0.0/24"
LAN_BCAST_ADRESS="192.168.0.255"
LAN_IFACE="eth1"

#
# 1.3 DMZ Configuration.
#
# 1.4 Localhost Configuration.
#
LO_IFACE="lo"
LO_IP="127.0.0.1"
#
# 1.5 IPTables Configuration.
#
IPTABLES="/sbin/iptables"
#
# 1.6 Other Configuration.
#
#2. Module loading.
#
# Needed to initially load modules
#
/sbin/depmod -a
#
# 2.1 Required modules
#
/sbin/modprobe ip_tables
/sbin/modprobe ip_conntrack
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_mangle
/sbin/modprobe iptable_nat
/sbin/modprobe ipt_LOG
/sbin/modprobe ipt_limit
/sbin/modprobe ipt_state
/sbin/modprobe ipt_TTL
#
# 2.2 Non-Required modules
#
/sbin/modprobe ip_conntrack_ftp
#
# 3. /proc set up.
#
# 3.1 Required proc configuration
#
echo "1" > /proc/sys/net/ipv4/ip_forward
#
# 4. rules set up.
# 4.1 Filter table
#
# 4.1.1 Set policies
#
$IPTABLES -F
$IPTABLES -F -t nat
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP
#
# 4.1.2 Create userspecified chains
#
# Create chain for bad tcp packets
#
$IPTABLES -N bad_tcp_packets
#
# Create separate chains for ICMP, TCP and UDP to traverse
#
$IPTABLES -N allowed
$IPTABLES -N icmp_packets
$IPTABLES -N tcp_packets
$IPTABLES -N udpincoming_packets
#
# 4.1.3 Create content in userspecified chains
#
# bad_tcp_packets chain
#
$IPTABLES -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j LOG --log-prefix "New not syn:"
$IPTABLES -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j DROP
#
# allowed chain
#
$IPTABLES -A allowed -p TCP --syn -j ACCEPT
$IPTABLES -A allowed -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A allowed -p TCP -j DROP
#
# TCP rules
#
#  80  HTTP
$IPTABLES -A tcp_packets -s 0/0 -p TCP --dport 80 -j allowed
#
#
# 22, 80, 25, 110
$IPTABLES -A tcp_packets -s $LAN_IP_RANGE -p TCP --dport 22 -j allowed
$IPTABLES -A tcp_packets -s $LAN_IP_RANGE -p TCP --dport 80 -j allowed
$IPTABLES -A tcp_packets -s $LAN_IP_RANGE -p TCP --dport 25 -j allowed
$IPTABLES -A tcp_packets -s $LAN_IP_RANGE -p TCP --dport 110 -j allowed
#
# MY HOME
#
$IPTABLES -A tcp_packets -p TCP -s 94.251.36.63 --dport 3389 -j allowed
$IPTABLES -A tcp_packets -p TCP -s 94.251.36.63 --dport 22 -j allowed
$IPTABLES -A tcp_packets -p TCP -s 94.251.36.63 --dport 1494 -j allowed
$IPTABLES -A tcp_packets -p TCP -s 194.150.155.214 --dport 3389 -j allowed
$IPTABLES -A tcp_packets -p TCP -s 194.150.155.214 --dport 22 -j allowed
$IPTABLES -A tcp_packets -p TCP -s 194.150.155.214 --dport 1494 -j allowed
#
##p2p
#
$IPTABLES -A udpincoming_packets -p UDP -s 0/0 --destination-port 68 -j ACCEPT
$IPTABLES -A FORWARD -d $LAN_IP_RANGE -p udp --dport 30002 -j ACCEPT
$IPTABLES -A FORWARD -d $LAN_IP_RANGE -p tcp --dport 30001 -j ACCEPT
#
# ICMP rules
#
$IPTABLES -A icmp_packets -p ICMP -s 0/0 --icmp-type 80 -j ACCEPT
$IPTABLES -A icmp_packets -p ICMP -s 0/0 --icmp-type 11 -j ACCEPT
#
# 4.1.4 INPUT chain
#
# Bad TCP packets we don't want.
#
$IPTABLES -A INPUT -p tcp -j bad_tcp_packets
#
# Rules for special networks not part of the Internet
#
$IPTABLES -A INPUT -p ALL -i $LAN_IFACE -s $LAN_IP_RANGE -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LO_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LAN_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $INET_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LAN_IFACE -d $LAN_BCAST_ADRESS -j ACCEPT
#
# Rules for incoming packets from the internet.
#
$IPTABLES -A INPUT -p ALL -d $INET_IP -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT -p TCP -i $INET_IFACE -j tcp_packets
$IPTABLES -A INPUT -p UDP -i $INET_IFACE -j udpincoming_packets
$IPTABLES -A INPUT -p ICMP -i $INET_IFACE -j icmp_packets
#
# Log weird packets that don't match the above.
#
$IPTABLES -A INPUT -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level DEBUG --log-prefix "IPT INPUT packet died: "
#
# 4.1.5 FORWARD chain
#
# Bad TCP packets we don't want
#
$IPTABLES -A FORWARD -p tcp -j bad_tcp_packets
#
# Accept the packets we actually want to forward
#
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
#
#    DROP
#
#$IPTABLES -A FORWARD -s $LAN_IP_RANGE -d 89.250.252.0/16 -j DROP
#$IPTABLES -A FORWARD -s $LAN_IP_RANGE -d 78.24.9.0/16 -j DROP
#
#  INTERNET
#
# nat
$IPTABLES -A FORWARD -s 192.168.0.2 -d 0/0 -j ACCEPT

# INCOMMING CONNECTION
#
$IPTABLES -A FORWARD -s 94.251.36.63 -d $LAN_IP_RANGE -j ACCEPT
$IPTABLES -A FORWARD -s 194.150.155.214 -d $LAN_IP_RANGE -j ACCEPT

# Log weird packets that don't match the above.
#
$IPTABLES -A FORWARD -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level DEBUG --log-prefix "IPT FORWARD packet died: "
#
# 4.1.6 OUTPUT chain

# Bad TCP packets we don't want.
#
$IPTABLES -A OUTPUT -p tcp -j bad_tcp_packets
#
# Special OUTPUT rules to decide which IP's to allow.
#
$IPTABLES -A OUTPUT -p ALL -s $LO_IP -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -s $LAN_IP -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -s $INET_IP -j ACCEPT
#
# Log weird packets that don't match the above.
#
$IPTABLES -A OUTPUT -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level DEBUG --log-prefix "IPT OUTPUT packet died: "
#
# 4.2 nat table

# REMOTE DESKTOP

# MY HOME
#
$IPTABLES -t nat -A PREROUTING -p tcp -s 94.251.36.63 --dport 3389 -j DNAT --to-destination 192.168.0.2:3389
$IPTABLES -t nat -A PREROUTING -p tcp -s 194.150.155.214 --dport 3389 -j DNAT --to-destination 192.168.0.2:3389
#
#P2P
#
$IPTABLES -t nat -A PREROUTING -p tcp -d 94.251.38.193 --dport 30001 -j DNAT --to-destination 192.168.0.2:30001
$IPTABLES -t nat -A PREROUTING -p udp -d 94.251.38.193 --dport 30002 -j DNAT --to-destination 192.168.0.2:30002


#
# 4.2.5 POSTROUTING chain
#


$IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -j SNAT --to-source $INET_IP

  • Пакеты из подсети в обход NAT, !*! aaa, 12:28 , 18-Дек-09 (1)
    Это скорее всего появляеться когда вы "играете" с правилами и сбрасываете их используя скрипт
    # rc.flush-iptables - Resets iptables to default values.
    #
    # Copyright (C) 2001  Oskar Andreasson
    Этот скрипт не отключает форвардинг echo "1" > /proc/sys/net/ipv4/ip_forward
    И пакеты проскакивают без ната
    • Пакеты из подсети в обход NAT, !*! madi, 15:46 , 18-Дек-09 (2)
      >Это скорее всего появляеться когда вы "играете" с правилами и сбрасываете их
      >используя скрипт
      ># rc.flush-iptables - Resets iptables to default values.
      >#
      ># Copyright (C) 2001  Oskar Andreasson
      >Этот скрипт не отключает форвардинг echo "1" > /proc/sys/net/ipv4/ip_forward
      >И пакеты проскакивают без ната

      что это за скрипт и где я его использую?
      если можно, пожалуйста подробнее.

      • Пакеты из подсети в обход NAT, !*! reader, 18:18 , 18-Дек-09 (5)
        >>Это скорее всего появляеться когда вы "играете" с правилами и сбрасываете их
        >>используя скрипт
        >># rc.flush-iptables - Resets iptables to default values.
        >>#
        >># Copyright (C) 2001  Oskar Andreasson
        >>Этот скрипт не отключает форвардинг echo "1" > /proc/sys/net/ipv4/ip_forward
        >>И пакеты проскакивают без ната
        >
        >что это за скрипт и где я его использую?
        >если можно, пожалуйста подробнее.

        то что показали после ....Firewall....
        и есть часть скрипта, который и определяет правила iptables

        попробуйте echo "1" > /proc/sys/net/ipv4/ip_forward перенести в самый конец ( и пустую строку в конце файла оставить не забудьте ), а на его месте echo "0" > /proc/sys/net/ipv4/ip_forward. это запретит пересылку пакетов на время внесения правил

        • Пакеты из подсети в обход NAT, !*! madi, 22:12 , 19-Дек-09 (6)
          >попробуйте echo "1" > /proc/sys/net/ipv4/ip_forward перенести в самый конец ( и пустую строку в конце файла оставить не забудьте ), а на его месте echo "0" > /proc/sys/net/ipv4/ip_forward. это запретит пересылку пакетов на время внесения правил

          Странно, но никаких изменений не произошло.
          уже весь мозг себе взорвал.

          • Пакеты из подсети в обход NAT, !*! reader, 10:22 , 20-Дек-09 (7)
            >>попробуйте echo "1" > /proc/sys/net/ipv4/ip_forward перенести в самый конец ( и пустую строку в конце файла оставить не забудьте ), а на его месте echo "0" > /proc/sys/net/ipv4/ip_forward. это запретит пересылку пакетов на время внесения правил
            >
            >Странно, но никаких изменений не произошло.
            >уже весь мозг себе взорвал.

            по времени в момент прохождения таких пакетов шлюз просто работал и никто ничего на нем не изменял, загружался или выключался?

            локалка физически отделена шлюзом от сети провайдера?

            iptables-save покажет текущие правила.

            • Пакеты из подсети в обход NAT, !*! madi, 14:03 , 20-Дек-09 (8)
              >по времени в момент прохождения таких пакетов шлюз просто работал и никто ничего на нем не изменял, загружался или выключался?

              в течении суток никого рядом не было.

              >локалка физически отделена шлюзом от сети провайдера?

              не понял вопрос.

              interfaces:
              # The loopback network interface
              auto lo
              iface lo inet loopback

              # The primary network interface
              auto eth0
              allow-hotplug eth0
              iface eth0 inet dhcp

              auto eth1
              iface eth1 inet static
                  address 192.168.0.1
                  netmask 255.255.255.0
                  dns-nameservers 192.168.0.1
                  dns-search madiserv
                  network 192.168.0.0
                  broadcast 192.168.0.255

              >iptables-save покажет текущие правила.

              madiserv:~# iptables-save
              # Generated by iptables-save v1.4.2 on Sun Dec 20 16:48:56 2009
              *nat
              :PREROUTING ACCEPT [730082:53559384]
              :POSTROUTING ACCEPT [97:6982]
              :OUTPUT ACCEPT [38949:2761262]
              -A PREROUTING -s 94.251.36.63/32 -p tcp -m tcp --dport 3389 -j DNAT --to-destination 192.168.0.2:3389
              -A PREROUTING -s 194.150.155.214/32 -p tcp -m tcp --dport 3389 -j DNAT --to-destination 192.168.0.2:3389
              -A PREROUTING -d 94.251.37.177/32 -p tcp -m tcp --dport 30001 -j DNAT --to-destination 192.168.0.2:30001
              -A PREROUTING -d 94.251.37.177/32 -p udp -m udp --dport 30002 -j DNAT --to-destination 192.168.0.2:30002
              -A POSTROUTING -o eth0 -j SNAT --to-source 94.251.38.193
              COMMIT
              # Completed on Sun Dec 20 16:48:56 2009
              # Generated by iptables-save v1.4.2 on Sun Dec 20 16:48:56 2009
              *mangle
              :PREROUTING ACCEPT [6975201:3908206386]
              :INPUT ACCEPT [803491:204261411]
              :FORWARD ACCEPT [6119195:3699727594]
              :OUTPUT ACCEPT [183432:266576491]
              :POSTROUTING ACCEPT [6302476:3966276994]
              COMMIT
              # Completed on Sun Dec 20 16:48:56 2009
              # Generated by iptables-save v1.4.2 on Sun Dec 20 16:48:56 2009
              *filter
              :INPUT DROP [513896:33890665]
              :FORWARD DROP [0:0]
              :OUTPUT DROP [0:0]
              :allowed - [0:0]
              :bad_tcp_packets - [0:0]
              :icmp_packets - [0:0]
              :tcp_packets - [0:0]
              :udpincoming_packets - [0:0]
              -A INPUT -p tcp -j bad_tcp_packets
              -A INPUT -s 192.168.0.0/24 -i eth1 -j ACCEPT
              -A INPUT -s 127.0.0.1/32 -i lo -j ACCEPT
              -A INPUT -s 192.168.0.1/32 -i lo -j ACCEPT
              -A INPUT -s 94.251.38.193/32 -i lo -j ACCEPT
              -A INPUT -d 192.168.0.255/32 -i eth1 -j ACCEPT
              -A INPUT -d 94.251.38.193/32 -m state --state RELATED,ESTABLISHED -j ACCEPT
              -A INPUT -i eth0 -p tcp -j tcp_packets
              -A INPUT -i eth0 -p udp -j udpincoming_packets
              -A INPUT -i eth0 -p icmp -j icmp_packets
              -A FORWARD -d 192.168.0.0/24 -p udp -m udp --dport 30002 -j ACCEPT
              -A FORWARD -d 192.168.0.0/24 -p tcp -m tcp --dport 30001 -j ACCEPT
              -A FORWARD -p tcp -j bad_tcp_packets
              -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
              -A FORWARD -s 192.168.0.2/32 -j ACCEPT
              -A FORWARD -s 94.251.36.63/32 -d 192.168.0.0/24 -j ACCEPT
              -A FORWARD -s 194.150.155.214/32 -d 192.168.0.0/24 -j ACCEPT
              -A FORWARD -m limit --limit 3/min --limit-burst 3 -j LOG --log-prefix "IPT FORWARD packet died: " --log-level 7
              -A OUTPUT -p tcp -j bad_tcp_packets
              -A OUTPUT -s 127.0.0.1/32 -j ACCEPT
              -A OUTPUT -s 192.168.0.1/32 -j ACCEPT
              -A OUTPUT -s 94.251.38.193/32 -j ACCEPT
              -A OUTPUT -m limit --limit 3/min --limit-burst 3 -j LOG --log-prefix "IPT OUTPUT packet died: " --log-level 7
              -A allowed -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
              -A allowed -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
              -A allowed -p tcp -j DROP
              -A bad_tcp_packets -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j LOG --log-prefix "New not syn:"
              -A bad_tcp_packets -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP
              -A icmp_packets -p icmp -m icmp --icmp-type 80 -j ACCEPT
              -A icmp_packets -p icmp -m icmp --icmp-type 11 -j ACCEPT
              -A tcp_packets -p tcp -m tcp --dport 80 -j allowed
              -A tcp_packets -s 192.168.0.0/24 -p tcp -m tcp --dport 22 -j allowed
              -A tcp_packets -s 192.168.0.0/24 -p tcp -m tcp --dport 80 -j allowed
              -A tcp_packets -s 192.168.0.0/24 -p tcp -m tcp --dport 25 -j allowed
              -A tcp_packets -s 192.168.0.0/24 -p tcp -m tcp --dport 110 -j allowed
              -A tcp_packets -s 94.251.36.63/32 -p tcp -m tcp --dport 3389 -j allowed
              -A tcp_packets -s 94.251.36.63/32 -p tcp -m tcp --dport 22 -j allowed
              -A tcp_packets -s 94.251.36.63/32 -p tcp -m tcp --dport 1494 -j allowed
              -A tcp_packets -s 194.150.155.214/32 -p tcp -m tcp --dport 3389 -j allowed
              -A tcp_packets -s 194.150.155.214/32 -p tcp -m tcp --dport 22 -j allowed
              -A tcp_packets -s 194.150.155.214/32 -p tcp -m tcp --dport 1494 -j allowed
              -A udpincoming_packets -p udp -m udp --dport 68 -j ACCEPT
              COMMIT
              # Completed on Sun Dec 20 16:48:56 2009

              Wireshark:
              interface eth0

              1    0.000000    192.168.0.2    59.93.71.141    TCP    53847 > ipdtp-port [FIN, ACK] Seq=1 Ack=1 Win=16437 Len=0
              2    43.735387    192.168.0.2    59.93.71.141    TCP    53847 > ipdtp-port [RST, ACK] Seq=2 Ack=1 Win=0 Len=0
              3    120.145798    192.168.0.2    78.90.193.239    TCP    53768 > 44193 [RST, ACK] Seq=1 Ack=1 Win=0 Len=0
              4    120.254799    192.168.0.2    188.18.81.53    TCP    54322 > 39542 [RST, ACK] Seq=1 Ack=1 Win=0 Len=0
              5    340.140492    192.168.0.2    94.178.10.251    TCP    54747 > 54981 [FIN, ACK] Seq=1 Ack=1 Win=65340 Len=0
              6    400.142977    192.168.0.2    94.178.10.251    TCP    54747 > 54981 [FIN, ACK] Seq=1 Ack=1 Win=65340 Len=0
              7    460.139428    192.168.0.2    94.178.10.251    TCP    54747 > 54981 [FIN, ACK] Seq=1 Ack=1 Win=65340 Len=0
              8    495.468445    192.168.0.2    77.239.234.218    TCP    54226 > 6880 [RST, ACK] Seq=1 Ack=1 Win=0 Len=0
              9    520.136873    192.168.0.2    94.178.10.251    TCP    54747 > 54981 [RST, ACK] Seq=2 Ack=1 Win=0 Len=0
              10    757.789519    192.168.0.2    95.211.101.145    TCP    54968 > http [RST, ACK] Seq=1 Ack=1 Win=0 Len=0


              • Пакеты из подсети в обход NAT, !*! reader, 18:57 , 20-Дек-09 (9)
                >>по времени в момент прохождения таких пакетов шлюз просто работал и никто ничего на нем не изменял, загружался или выключался?
                >
                >в течении суток никого рядом не было.
                >
                >>локалка физически отделена шлюзом от сети провайдера?
                >
                >не понял вопрос.

                eth0 и eth1 в один свичь воткнуты?
                есть ли другие шлюзы?
                покажите таблицу маршрутизации с 192.168.0.2
                  
                о>
                >[оверквотинг удален]
                >1    0.000000    192.168.0.2    59.93.71.141    TCP    53847 > ipdtp-port [FIN, ACK] Seq=1 Ack=1 Win=16437 Len=0
                >2    43.735387    192.168.0.2    59.93.71.141    TCP    53847 > ipdtp-port [RST, ACK] Seq=2 Ack=1 Win=0 Len=0
                >3    120.145798    192.168.0.2    78.90.193.239    TCP    53768 > 44193 [RST, ACK] Seq=1 Ack=1 Win=0 Len=0
                >4    120.254799    192.168.0.2    188.18.81.53    TCP    54322 > 39542 [RST, ACK] Seq=1 Ack=1 Win=0 Len=0
                >5    340.140492    192.168.0.2    94.178.10.251    TCP    54747 > 54981 [FIN, ACK] Seq=1 Ack=1 Win=65340 Len=0
                >6    400.142977    192.168.0.2    94.178.10.251    TCP    54747 > 54981 [FIN, ACK] Seq=1 Ack=1 Win=65340 Len=0
                >7    460.139428    192.168.0.2    94.178.10.251    TCP    54747 > 54981 [FIN, ACK] Seq=1 Ack=1 Win=65340 Len=0
                >8    495.468445    192.168.0.2    77.239.234.218    TCP    54226 > 6880 [RST, ACK] Seq=1 Ack=1 Win=0 Len=0
                >9    520.136873    192.168.0.2    94.178.10.251    TCP    54747 > 54981 [RST, ACK] Seq=2 Ack=1 Win=0 Len=0
                >10    757.789519    192.168.0.2    95.211.101.145    TCP    54968 > http [RST, ACK] Seq=1 Ack=1 Win=0 Len=0

                это точно с eth0?
                а если использовать
                $IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -j MASQUERADE

                модуль ipt_MASQUERADE

                • Пакеты из подсети в обход NAT, !*! madi, 14:24 , 22-Дек-09 (10)
                  >eth0 и eth1 в один свичь воткнуты?

                  маршрутизатором является отдельный комп, в нем есть две сетевых карты к одной интернет к другой локальная. локалка обратным свитчем.

                  >покажите таблицу маршрутизации с 192.168.0.2

                  как отдельно показать не знаю

                  madiserv:~# iptables -L
                  Chain INPUT (policy DROP)
                  target     prot opt source               destination
                  bad_tcp_packets  tcp  --  anywhere             anywhere
                  DROP       tcp  --  192.168.0.0/24       anywhere
                  ACCEPT     all  --  192.168.0.0/24       anywhere
                  ACCEPT     all  --  localhost            anywhere
                  ACCEPT     all  --  madiserv.local       anywhere
                  ACCEPT     all  --  host-94-251-38-193.bbcustomer.zsttk.net  anywhere
                  ACCEPT     all  --  anywhere             192.168.0.255
                  ACCEPT     all  --  anywhere             host-94-251-38-193.bbcustomer.zsttk.net state RELATED,ESTABLISHED
                  tcp_packets  tcp  --  anywhere             anywhere
                  udpincoming_packets  udp  --  anywhere             anywhere
                  icmp_packets  icmp --  anywhere             anywhere

                  Chain FORWARD (policy DROP)
                  target     prot opt source               destination
                  ACCEPT     udp  --  anywhere             192.168.0.0/24      udp dpt:30002
                  ACCEPT     tcp  --  anywhere             192.168.0.0/24      tcp dpt:30001
                  bad_tcp_packets  tcp  --  anywhere             anywhere
                  ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED
                  ACCEPT     all  --  madi1                anywhere
                  ACCEPT     all  --  host-94-251-36-63.bbcustomer.zsttk.net  192.168.0.0/24
                  ACCEPT     all  --  194-150-155-214.xdsl.ab.ru  192.168.0.0/24

                  Chain OUTPUT (policy DROP)
                  target     prot opt source               destination
                  bad_tcp_packets  tcp  --  anywhere             anywhere
                  ACCEPT     all  --  localhost            anywhere
                  ACCEPT     all  --  madiserv.local       anywhere
                  ACCEPT     all  --  host-94-251-38-193.bbcustomer.zsttk.net  anywhere

                  Chain allowed (14 references)
                  target     prot opt source               destination
                  ACCEPT     tcp  --  anywhere             anywhere            tcp flags:FIN,SYN,RST,ACK/SYN
                  ACCEPT     tcp  --  anywhere             anywhere            state RELATED,ESTABLISHED
                  DROP       tcp  --  anywhere             anywhere

                  Chain bad_tcp_packets (3 references)
                  target     prot opt source               destination
                  LOG        tcp  --  anywhere             anywhere            tcp flags:!FIN,SYN,RST,ACK/SYN state NEW LOG level war
                  DROP       tcp  --  anywhere             anywhere            tcp flags:!FIN,SYN,RST,ACK/SYN state NEW

                  Chain icmp_packets (1 references)
                  target     prot opt source               destination
                  ACCEPT     icmp --  anywhere             anywhere            icmp type 80
                  ACCEPT     icmp --  anywhere             anywhere            icmp time-exceeded

                  Chain tcp_packets (1 references)
                  target     prot opt source               destination
                  allowed    tcp  --  anywhere             anywhere            tcp dpt:28960
                  allowed    tcp  --  anywhere             anywhere            tcp dpt:28961
                  allowed    tcp  --  anywhere             anywhere            tcp dpt:28962
                  allowed    tcp  --  anywhere             anywhere            tcp dpt:www
                  allowed    tcp  --  192.168.0.0/24       anywhere            tcp dpt:ssh
                  allowed    tcp  --  192.168.0.0/24       anywhere            tcp dpt:www
                  allowed    tcp  --  192.168.0.0/24       anywhere            tcp dpt:smtp
                  allowed    tcp  --  192.168.0.0/24       anywhere            tcp dpt:pop3
                  allowed    tcp  --  host-94-251-36-63.bbcustomer.zsttk.net  anywhere            tcp dpt:3389
                  allowed    tcp  --  host-94-251-36-63.bbcustomer.zsttk.net  anywhere            tcp dpt:ssh
                  allowed    tcp  --  host-94-251-36-63.bbcustomer.zsttk.net  anywhere            tcp dpt:1494
                  allowed    tcp  --  194-150-155-214.xdsl.ab.ru  anywhere            tcp dpt:3389
                  allowed    tcp  --  194-150-155-214.xdsl.ab.ru  anywhere            tcp dpt:ssh
                  allowed    tcp  --  194-150-155-214.xdsl.ab.ru  anywhere            tcp dpt:1494

                  Chain udpincoming_packets (1 references)
                  target     prot opt source               destination
                  ACCEPT     udp  --  anywhere             anywhere            udp dpt:28960
                  ACCEPT     udp  --  anywhere             anywhere            udp dpt:28961
                  ACCEPT     udp  --  anywhere             anywhere            udp dpt:28962
                  ACCEPT     udp  --  anywhere             anywhere            udp dpt:bootpc

                  30001 и 30002  Flaylink
                  28960.28961.28962 сервер СОD4

                  >это точно с eth0?

                  в WIRESHARK указываю с eth0 фильтр - 192.168.0.2

                  >а если использовать
                  >$IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -j MASQUERADE

                  ничего не изменилось, проблема таже.
                  у меня IP статический. проще SNAT.

                  странно что может работать сутки без проблем, а потом бац!!!

                  • Пакеты из подсети в обход NAT, !*! reader, 21:31 , 22-Дек-09 (11)
                    >[оверквотинг удален]
                    >
                    >в WIRESHARK указываю с eth0 фильтр - 192.168.0.2
                    >
                    >>а если использовать
                    >>$IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -j MASQUERADE
                    >
                    >ничего не изменилось, проблема таже.
                    >у меня IP статический. проще SNAT.
                    >
                    >странно что может работать сутки без проблем, а потом бац!!!

                    интерфейс перед этим не опускался провайдером?

                    • Пакеты из подсети в обход NAT, !*! madi, 23:14 , 22-Дек-09 (12)
                      порт падает на пять минут только после того как коммутатор провайдера обнаружит левый IP
                      • Пакеты из подсети в обход NAT, !*! madi, 15:43 , 23-Дек-09 (13)
                        поптобовал arno-iptables-firewall результат одинаковый.
                        последние строчки tcpdump
                        18:23:28.936418 IP host-94-251-38-63.bbcustomer.zsttk.net.netbios-ns > 94.251.38.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
                        18:23:29.050670 IP host-94-251-38-75.bbcustomer.zsttk.net.netbios-dgm > 94.251.38.255.netbios-dgm: NBT UDP PACKET(138)
                        18:23:29.054998 IP host-94-251-38-97.bbcustomer.zsttk.net.netbios-ns > 94.251.38.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
                        18:23:29.206313 IP6 fe80::d5f7:5f1e:812f:8e60.59592 > ff02::c.1900: UDP, length 146
                        18:23:29.215413 IP host-94-251-38-74.bbcustomer.zsttk.net.mdns > 224.0.0.251.mdns: 0[|domain]
                        18:23:29.216386 IP host-94-251-38-74.bbcustomer.zsttk.net.mdns > 224.0.0.251.mdns: 0*- [0q] 3/0/0[|domain]
                        18:23:29.583402 arp who-has host-94-251-38-85.bbcustomer.zsttk.net tell host-94-251-38-85.bbcustomer.zsttk.net
                        18:23:29.605613 IP madi1.52728 > atoll.cis.rv.ua.www: F 0:0(0) ack 1 win 62858


  • Пакеты из подсети в обход NAT, !*! gas, 19:15 , 13-Апр-11 (15)
    Если решилась проблема, подскажите пожалуйста как - наблюдаю в нашей сети (и не только) то же самое. Раскопки по казали что подавляющее большинство - это ack пакеты от клиентов и вылазит только tcp:

    17:42:42.630424 IP 10.250.201.3.48913 > 188.168.5.180.37996: Flags [F.], seq 4293866651, ack 3964839509, win 17280, length 0
    17:42:42.793607 IP 10.245.2.166.1474 > 195.211.101.131.80: Flags [F.], seq 3807556108, ack 2863131535, win 64240, length 0
    17:42:42.794386 IP 10.245.2.166.1477 > 195.211.101.131.80: Flags [F.], seq 244781643, ack 2864206967, win 64240, length 0
    17:42:42.795111 IP 10.245.2.166.1476 > 195.211.101.131.80: Flags [F.], seq 2670314452, ack 2852297187, win 64240, length 0
    17:42:43.119552 IP 10.245.2.71.63288 > 74.125.230.153.80: Flags [F.], seq 1019412857, ack 805281035, win 64350, length 0
    17:42:43.369557 IP 10.252.6.9.61787 > 82.112.101.235.80: Flags [F.], seq 993680131, ack 2552692069, win 64181, length 0
    17:42:43.621153 IP 10.245.2.71.63288 > 74.125.230.153.80: Flags [F.], seq 0, ack 1, win 64350, length 0
    17:42:44.000830 IP 10.245.2.166.1482 > 195.211.101.131.80: Flags [F.], seq 482969609, ack 2858700975, win 64240, length 0

    • Пакеты из подсети в обход NAT, !*! Andrey Mitrofanov, 20:47 , 13-Апр-11 (16)
      > Если решилась проблема, подскажите пожалуйста как - наблюдаю в нашей сети (и
      > не только) то же самое. Раскопки по казали что подавляющее большинство
      > - это ack пакеты от клиентов и вылазит только tcp:

      У меня что-то подобное вылазило, но с большинством с "fin,syn" или типа того.

      _Предполагаю_, что при медленных каналах или клиентах, (?или разрывах связи ?или серверах), соединения выносятся из таблиц conntrack по тайауту, после чего следующий пришедщий в этом соединении пакет уже не попадает в "ESTABLISHED", соединение клиента рвётся, в логе появляется "необычное"...

      Крутил в районе sysctl.conf и -

      # find /proc/sys/net \! -type d -path "*ipv4*conn*timeout*"|xargs grep .
      /proc/sys/net/ipv4/netfilter/ip_conntrack_generic_timeout:600
      /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_syn_sent:120
      /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_syn_sent2:120
      /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_syn_recv:60
      /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established:432000
      /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_fin_wait:120
      /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_close_wait:60
      /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_last_ack:30
      /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_time_wait:120
      /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_close:10
      /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_max_retrans:300
      /proc/sys/net/ipv4/netfilter/ip_conntrack_udp_timeout:30
      /proc/sys/net/ipv4/netfilter/ip_conntrack_udp_timeout_stream:180
      /proc/sys/net/ipv4/netfilter/ip_conntrack_icmp_timeout:30
      # _

      , увеличивал те, что <300 до 300 или 360. Логи "похудели", "тех" сообщений стало в десятки-сотни раз меньше. YMMV~~

      • Пакеты из подсети в обход NAT, !*! gas, 11:34 , 15-Апр-11 (17)
        Вобщем похоже что решил проблему. Наткнулся на статью: http://www.smythies.com/~doug/network/iptables_notes/index.html - как раз моя ситуация. Помогло добавление:
        $IPTABLES -A FORWARD -i $INTIF -p tcp -m state --state INVALID -j DROP
        Каналы уже не такие уж и медленные. На сервере значительный запас по производительности. Может быть действительно из-за разрывов или из-за неправильной работы tcp стэка у клиента. Думаю что увеличивать таймауты тоже не очень хорошо, особенно когда за натом >1000 клиентов.
  • Пакеты из подсети в обход NAT, !*! LSTemp, 23:50 , 20-Апр-11 (18)
    $IPTABLES -A FORWARD -s 192.168.0.2 -d 0/0 -j ACCEPT
    правило радует просто. хоть интерфейс входящий к нему прицепи. src 192.168.0.2 в любом пакете сделать не проблема.

    ADD
    у Вас весь форвард пакетов идет только на основании ИПов отравилеля и получателя, т.е. на основании содержимого пакета. пакет посылает неизвестно кто и запихать в него может что угодно. поставьте проверки интерфейсов в цепочку форварда.

    так же проверяйте с каких интерфейсов к вам какие адреса приходят (например с WAN-интерфейса серые адреса сразу рубить, пакеты с адресом отпрвавителя который принадлежит Вашему серверу - сразу рубить, итд).

  • Пакеты из подсети в обход NAT, !*! LSTemp, 00:04 , 21-Апр-11 (19)
    > Здравствуйте.
    > есть Debian 503. ядро - 2.6.26-2-686 в роли маршрутизатора, две сетевых карты.
    > подсеть 192.168.0.0/24 Windows 7
    > провайдер ТТК
    > проблема: некоторые пакеты из локальной сети идут в обход NAT

    на основании чего такой вывод сделан?




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру