Ik probeer mijn eigen server te laten vollopen met halve TCP requests. Een android applicatie creeert een aantal sockets, de server accepteert deze maar blocked het antwoord. Dit gebeurd door middel van de volgende IPTables rules
In mijn logs zie ik ook dat dit gebeurd.
Maar als ik vervolgens kijk hoeveel half open TCP verbindingen het OS ziet dan is dit 0.
Ik gebruik hiervoor het command "ss -s"
Total: 125 (kernel 0)
TCP: 12 (estab 1, closed 3, orphaned 0, synrecv 0, timewait 2/0), ports 0
Transport Total IP IPv6
* 0 - -
Hoe weet ik zeker dat ik het besturingsysteem belast met half open sessies (het lijkt erop van niet). Is er misschien een andere manier om dit te controleren?
code:
1
2
3
| sudo iptables -A INPUT -i eth0 -p tcp -m state -s [IP PHONE] --state NEW -j LOG --log-prefix "TCP SYN RECV: " sudo iptables -A OUTPUT -o eth0 -p tcp -m state -d [IP PHONE] --state ESTABLISHED -j LOG --log-prefix "TCP ACK Blocked: " sudo iptables -A OUTPUT -o eth0 -p tcp -m state -d [IP PHONE] --state ESTABLISHED -j REJECT |
In mijn logs zie ik ook dat dit gebeurd.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| TCP ACK Blocked: IN= OUT=eth0 SRC=[IP server] DST=[IP Phone] LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=TCP SPT=80 DPT=60344 WINDOW=28960 RES=0x00 ACK SYN URGP=0 TCP SYN RECV: IN=eth0 OUT= MAC=00:18:8b:f7:ca:91:00:1c:23:81:aa:2b:08:00 SRC=[IP Phone] DST=[IP server] LEN=60 TOS=0x00 PREC=0x00 TTL=62 ID=21457 DF PROTO=TCP SPT=48599 DPT=80 WINDOW=14600 RES=0x00 SYN URGP=0 TCP SYN RECV: IN=eth0 OUT= MAC=00:18:8b:f7:ca:91:00:1c:23:81:aa:2b:08:00 SRC=[IP Phone] DST=[IP server] LEN=60 TOS=0x00 PREC=0x00 TTL=62 ID=21457 DF PROTO=TCP SPT=48599 DPT=80 WINDOW=14600 RES=0x00 SYN URGP=0 TCP ACK Blocked: IN= OUT=eth0 SRC=[IP server] DST=[IP Phone] LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=TCP SPT=80 DPT=48599 WINDOW=28960 RES=0x00 ACK SYN URGP=0 TCP SYN RECV: IN=eth0 OUT= MAC=00:18:8b:f7:ca:91:00:1c:23:81:aa:2b:08:00 SRC=[IP Phone] DST=[IP server] LEN=60 TOS=0x00 PREC=0x00 TTL=62 ID=45046 DF PROTO=TCP SPT=36292 DPT=80 WINDOW=14600 RES=0x00 SYN URGP=0 TCP SYN RECV: IN=eth0 OUT= MAC=00:18:8b:f7:ca:91:00:1c:23:81:aa:2b:08:00 SRC=[IP Phone] DST=[IP server] LEN=60 TOS=0x00 PREC=0x00 TTL=62 ID=45046 DF PROTO=TCP SPT=36292 DPT=80 WINDOW=14600 RES=0x00 SYN URGP=0 TCP ACK Blocked: IN= OUT=eth0 SRC=[IP server] DST=[IP Phone] LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=TCP SPT=80 DPT=36292 WINDOW=28960 RES=0x00 ACK SYN URGP=0 TCP SYN RECV: IN=eth0 OUT= MAC=00:18:8b:f7:ca:91:00:1c:23:81:aa:2b:08:00 SRC=[IP Phone] DST=[IP server] LEN=60 TOS=0x00 PREC=0x00 TTL=62 ID=25468 DF PROTO=TCP SPT=56612 DPT=80 WINDOW=14600 RES=0x00 SYN URGP=0 TCP SYN RECV: IN=eth0 OUT= MAC=00:18:8b:f7:ca:91:00:1c:23:81:aa:2b:08:00 SRC=[IP Phone] DST=[IP server] LEN=60 TOS=0x00 PREC=0x00 TTL=62 ID=25468 DF PROTO=TCP SPT=56612 DPT=80 WINDOW=14600 RES=0x00 SYN URGP=0 TCP ACK Blocked: IN= OUT=eth0 SRC=[IP server] DST=[IP Phone] LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=TCP SPT=80 DPT=56612 WINDOW=28960 RES=0x00 ACK SYN URGP=0 TCP SYN RECV: IN=eth0 OUT= MAC=00:18:8b:f7:ca:91:00:1c:23:81:aa:2b:08:00 SRC=[IP Phone] DST=[IP server] LEN=60 TOS=0x00 PREC=0x00 TTL=62 ID=20071 DF PROTO=TCP SPT=54179 DPT=80 WINDOW=14600 RES=0x00 SYN URGP=0 TCP SYN RECV: IN=eth0 OUT= MAC=00:18:8b:f7:ca:91:00:1c:23:81:aa:2b:08:00 SRC=[IP Phone] DST=[IP server] LEN=60 TOS=0x00 PREC=0x00 TTL=62 ID=20071 DF PROTO=TCP SPT=54179 DPT=80 WINDOW=14600 RES=0x00 SYN URGP=0 TCP ACK Blocked: IN= OUT=eth0 SRC=[IP server] DST=[IP Phone] LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=TCP SPT=80 DPT=54179 WINDOW=28960 RES=0x00 ACK SYN URGP=0 TCP ACK Blocked: IN= OUT=eth0 SRC=[IP server] DST=[IP Phone] LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=TCP SPT=80 DPT=57781 WINDOW=28960 RES=0x00 ACK SYN URGP=0 TCP ACK Blocked: IN= OUT=eth0 SRC=[IP server] DST=[IP Phone] LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=TCP SPT=80 DPT=52534 WINDOW=28960 RES=0x00 ACK SYN URGP=0 TCP ACK Blocked: IN= OUT=eth0 SRC=[IP server] DST=[IP Phone] LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=TCP SPT=80 DPT=52424 WINDOW=28960 RES=0x00 ACK SYN URGP=0 TCP ACK Blocked: IN= OUT=eth0 SRC=[IP server] DST=[IP Phone] LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=TCP SPT=80 DPT=53723 WINDOW=28960 RES=0x00 ACK SYN URGP=0 TCP ACK Blocked: IN= OUT=eth0 SRC=[IP server] DST=[IP Phone] LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=TCP SPT=80 DPT=55082 WINDOW=28960 RES=0x00 ACK SYN URGP=0 TCP ACK Blocked: IN= OUT=eth0 SRC=[IP server] DST=[IP Phone] LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=TCP SPT=80 DPT=35883 WINDOW=28960 RES=0x00 ACK SYN URGP=0 TCP ACK Blocked: IN= OUT=eth0 SRC=[IP server] DST=[IP Phone] LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=TCP SPT=80 DPT=46408 WINDOW=28960 RES=0x00 ACK SYN URGP=0 |
Maar als ik vervolgens kijk hoeveel half open TCP verbindingen het OS ziet dan is dit 0.
Ik gebruik hiervoor het command "ss -s"
Total: 125 (kernel 0)
TCP: 12 (estab 1, closed 3, orphaned 0, synrecv 0, timewait 2/0), ports 0
Transport Total IP IPv6
* 0 - -
Hoe weet ik zeker dat ik het besturingsysteem belast met half open sessies (het lijkt erop van niet). Is er misschien een andere manier om dit te controleren?
Lux.Architectuur | Van Dromen tot Wonen | www.Lux-a.nl