Nemůžu po čase z jedné stránky získat GET požadavek

rootacek

  • *
  • 47
  • Linux je dobrá volba, Windows je cesta do pekla!
    • Zobrazit profil
    • E-mail
Zdravím všechny

potřeboval bych helpnout. Nevím, jak situaci řešit. Mám jednu stránku, která mi když na ni pracuju třeba 15min v kuse. Po 15 minutech přestane odpovídat(server), nepošle žádnou odpověď při GET požadavku. Zajímavější je, že to je vázané na ip adresu.Pod jinou ip to fakčí.
Po dejme tomu 45 minutach, se to spraví a situace se opakuje pořád dokola.

Vše jsem testoval, OS,softwary ping server, odpovídá, trace, je ok. Když dám do CMD, GET, stejně jako v prohlížeči, tak bez přijmutí odpověďi.

Zvážil jsem a odzkoušel všechno, takže jsem došel k závěru, že je to na stoprocent na síti, software jde mimo hru. Jako nejjistější možnost jsem bral hosting.

Tak jsem to s nima řešil, jestli to neblokujou, třeba přes nějaký DDOS, apd.Bezvýsledně, tvrdí, že rozhodně ne. Co s tím? Samozřejmě jak jsem psal software, který by to mohl způsobovat, tam není.

Napadá někoho, co udělat, jak to více debugovat(poradit) jak by jste to řešili, či nějaká možnost v čem je zakopaný pes?  Nedá mi to spát. >:( Nemám proto, žádné logické vysvětlení.

Díky všem!  :)
« Poslední změna: 05. 08. 2015, 20:31:18 od Roman Bořánek »


pepa

Re:Nemůžu po čase z jedné stránky získat GET požadavek po dobu
« Odpověď #1 kdy: 05. 08. 2015, 15:34:06 »
záleží co znamená ta práce, jestli z toho serveru těžíš data tak tě možná aplikace zařezává

Re:Nemůžu po čase z jedné stránky získat GET požadavek po dobu
« Odpověď #2 kdy: 05. 08. 2015, 15:58:04 »
proxy

Jenda

Re:Nemůžu po čase z jedné stránky získat GET požadavek po dobu
« Odpověď #3 kdy: 05. 08. 2015, 16:03:52 »
Řešíš síťový problém a přitom jsi vůbec neuvedl co se vlastně děje - odmítne TCP spojení? SYN pakety prostě zahodí? Otevře spojení a pak to nechá vyhnít? Pošle ti na ten GET ACK nebo ne?

Jenda

Re:Nemůžu po čase z jedné stránky získat GET požadavek po dobu
« Odpověď #4 kdy: 05. 08. 2015, 16:04:44 »
A když už máš navázaný kontakt s protistranou, proč jsi prostě nedodal packet capture během problémového okamžiku?


rootacek

  • *
  • 47
  • Linux je dobrá volba, Windows je cesta do pekla!
    • Zobrazit profil
    • E-mail
Re:Nemůžu po čase z jedné stránky získat GET požadavek po dobu
« Odpověď #5 kdy: 05. 08. 2015, 17:25:53 »
záleží co znamená ta práce, jestli z toho serveru těžíš data tak tě možná aplikace zařezává

Jaká aplikace? Aplikace, tam žádná není(moje).

Řešíš síťový problém a přitom jsi vůbec neuvedl co se vlastně děje - odmítne TCP spojení? SYN pakety prostě zahodí?

Moc se v sitích nevyznám, takže nevím  prostě GET požadavek, načítá a nic nevrací než vyprší timeout.
Pravděpodobně to sedí, na to jak píšeš s tím vyhnitím. Je to asi dočasné a je to fixované na ip. Prostě 15 minut tam něco dělám, pak se to zasekne, čekám na GET request, a nevrátí nic, jen načítá stále. 45 min to třeba nechám, vrátím se a zase to jde, tak to se opakuje pořád dokola.

Když ze stejného pc připojím pod jinou ip, vše je ok.Na OS, to nemá vliv.

Citace
Pošle ti na ten GET ACK nebo ne?
Kde to mohu zjistit? O ACK, jsem slyšel ,ale nevím o tom nic. To stejné s SYN paketama, to jsem nikdy neřešil. Musel bych použít nějaký wireshark, nebo něco takového?
 
Díky moc za pomoc!!!

Honza

Re:Nemůžu po čase z jedné stránky získat GET požadavek po dobu
« Odpověď #6 kdy: 05. 08. 2015, 17:43:21 »
Ahoj,
  mohl bys poslat komplet HTTP hlavicky co posilas? Jde taky o to, jestli je to HTTP 1.0 ci HTTP 1.1
jestli drzis jedno TCP spojeni, nebo na kazdy pozadavek vytvaris nove spojeni. Pokud je to HTTP 1.1,
davas po poslednim requestu close connection? Wireshark dump by opravdu pomohl. Staci
jen vyfiltrovany provoz na tu cilovou IP ...

Tech moznosti, proc to nefunguje, je fakt hodne. V tom dumpu to hnedka uvidime...
Teda predpoklad je, ze pristupujes pres nesifrovane spojeni a bude vse hezky videt
v plain textu ;-)

Honza

rootacek

  • *
  • 47
  • Linux je dobrá volba, Windows je cesta do pekla!
    • Zobrazit profil
    • E-mail
Re:Nemůžu po čase z jedné stránky získat GET požadavek po dobu
« Odpověď #7 kdy: 06. 08. 2015, 15:31:36 »
Ahoj,
  mohl bys poslat komplet HTTP hlavicky co posilas? Jde taky o to, jestli je to HTTP 1.0 ci HTTP 1.1
jestli drzis jedno TCP spojeni, nebo na kazdy pozadavek vytvaris nove spojeni. Pokud je to HTTP 1.1,
davas po poslednim requestu close connection? Wireshark dump by opravdu pomohl. Staci
jen vyfiltrovany provoz na tu cilovou IP ...

Tech moznosti, proc to nefunguje, je fakt hodne. V tom dumpu to hnedka uvidime...
Teda predpoklad je, ze pristupujes pres nesifrovane spojeni a bude vse hezky videt
v plain textu ;-)

Honza

Díky za odpověď, bohužel jsem odpověděl později, protože mi to šlo, tak jsem to neměl jak odzkoušet.
No tam není žádný DUMP, wireshark ukazuje, že já posílám SYN a nepříjímám nic žádnou odpověď. Po nějaké době, se zopakuje SYN, do doby než vyprší celkový timeout.Jinak HTTP 1.1 mám, hlavičky mám normální. Ale všechno jde přes browser, ten by měl ukončovat přece připojení. Tak co bych s tím měl dělat já?

Na druhou stranu jsi poukázal na to, že je možné, že to je ucpané spojení a kdyby byl neukončený request mohlo by to být ono? 

jestli drzis jedno TCP spojeni, nebo na kazdy pozadavek vytvaris nove spojeni. Jak to myslíš?

 :)

Jenda

Re:Nemůžu po čase z jedné stránky získat GET požadavek po dobu
« Odpověď #8 kdy: 06. 08. 2015, 15:54:32 »
telnet server 80 (nebo openssl s_client -connect server:443 pokud je to TLS)

a ano, wireshark


Jenda

Re:Nemůžu po čase z jedné stránky získat GET požadavek po dobu
« Odpověď #9 kdy: 06. 08. 2015, 15:56:31 »
wireshark ukazuje, že já posílám SYN a nepříjímám nic žádnou odpověď. Po nějaké době, se zopakuje SYN, do doby než vyprší celkový timeout.

OK, tak to ti nejspíš něco cestou nebo server na druhé straně úplně zahazuje. Teď by to chtělo zjistit co vidí protistrana.

rootacek

  • *
  • 47
  • Linux je dobrá volba, Windows je cesta do pekla!
    • Zobrazit profil
    • E-mail
Re:Nemůžu po čase z jedné stránky získat GET požadavek po dobu
« Odpověď #10 kdy: 06. 08. 2015, 16:59:11 »
wireshark ukazuje, že já posílám SYN a nepříjímám nic žádnou odpověď. Po nějaké době, se zopakuje SYN, do doby než vyprší celkový timeout.

OK, tak to ti nejspíš něco cestou nebo server na druhé straně úplně zahazuje. Teď by to chtělo zjistit co vidí protistrana.

openssl příkaz pošle ACK. A info o TLS. Jenže to asi nic neznamená, ip adresa je sdílená pro hosting. Takže ve skutečnosti mi to asi posílá obecně server.

Z druhé strany, asi nic nezískám.Čím by to tak mohlo být, co mám ještě vyzkoušet? Mohlo by to být neukončeným spojením a nějakým zacyklením v síti? Fakta stane se to tedy po nějaké době používání webu do půl hodiny+- to zase funguje jako kdyby se to uklidnilo. Teoreticky si myslím, že kdybych pořád posílal requesty, že se to nenačte nikdy, mohl bych to vyzkoušet možná. Díky moc za pomoc!  :)

pb.

Re:Nemůžu po čase z jedné stránky získat GET požadavek
« Odpověď #11 kdy: 06. 08. 2015, 17:29:02 »
Je možné, že někde po cestě, nebo přímo na serveru, je synflood filtr. V iptables to může vypadat třeba takto:

iptables -A rule -p tcp ! --syn -j RETURN
iptables -A rule -m limit --limit 1/s --limit-burst 50 -j RETURN
iptables -A rule -j DROP

brokovnice

rootacek

  • *
  • 47
  • Linux je dobrá volba, Windows je cesta do pekla!
    • Zobrazit profil
    • E-mail
Re:Nemůžu po čase z jedné stránky získat GET požadavek
« Odpověď #12 kdy: 06. 08. 2015, 20:33:11 »
Je možné, že někde po cestě, nebo přímo na serveru, je synflood filtr. V iptables to může vypadat třeba takto:

iptables -A rule -p tcp ! --syn -j RETURN
iptables -A rule -m limit --limit 1/s --limit-burst 50 -j RETURN
iptables -A rule -j DROP

brokovnice

Jako na tom cílovém serveru jo? :) Po cestě, ale kde, to se pak přece nedá zjistit. Po cestě, by se to teoreticky vůbec nemělo stát ne?

rootacek

  • *
  • 47
  • Linux je dobrá volba, Windows je cesta do pekla!
    • Zobrazit profil
    • E-mail
Re:Nemůžu po čase z jedné stránky získat GET požadavek
« Odpověď #13 kdy: 07. 08. 2015, 11:47:57 »
Jako dodatek, posílám ještě, jak se provoz opakuje stále dokola při požadavku.
Kdyby někdo mohl ještě pomoct, byl bych moc rád. Nevím cos tím :(

Díky moc všem!