Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Pingowanie ip:port
modern-web
post 26.11.2010, 18:36:48
Post #1





Grupa: Zarejestrowani
Postów: 763
Pomógł: 117
Dołączył: 15.03.2010
Skąd: void

Ostrzeżenie: (0%)
-----


Witam wszystkich!
Mam pewien problem związany ze skryptem pingowania danego adresu IP oraz portu.
Napisałem taki oto fragment:
  1. $ping = system('ping '.$ip.':80 -t -l 80 -n 1 -w 1000');

ale niestety gdy wgram go na serwer z systemem operacyjnym Linux, skrypt nie działa. Nie zwraca nawet błędu...

Wie ktoś może dlaczego na serwerach z systemem operacyjnym Windows działa, natomiast Linux nie ;/?
Domyślam się, że to coś z system() ale wolę poruszyć ten temat z Wami smile.gif

Pozdrawiam!

P.S.
Dodam jeszcze, że na localhost zwraca mi 0ms - więc niby działa :0

Ten post edytował modern-web 26.11.2010, 18:38:03


--------------------
Pomogłem? Kliknij `Pomógł`. To nic nie kosztuje, a mnie usatysfakcjonuje! ;)
Go to the top of the page
+Quote Post
CuteOne
post 26.11.2010, 18:53:14
Post #2





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

Ostrzeżenie: (0%)
-----


  1. $ping = system('ping '.$ip.':80 -t -l 80 -n 1 -w 1000', $var);
  2.  
  3. echo '<pre>';
  4. echo var_dump($var);
  5. echo '</pre>';
  6.  


2. sprawdź czy masz włączony safe_mode http://pl2.php.net/system
3. z tego co pamiętam adres ip powinien iść na końcu? (może się mylę smile.gif)

Ten post edytował CuteOne 26.11.2010, 18:57:35
Go to the top of the page
+Quote Post
modern-web
post 26.11.2010, 19:08:21
Post #3





Grupa: Zarejestrowani
Postów: 763
Pomógł: 117
Dołączył: 15.03.2010
Skąd: void

Ostrzeżenie: (0%)
-----


safe_mode wyłączony ...


Cytat
safe_mode Off Off
safe_mode_exec_dir no value no value
safe_mode_gid Off Off
safe_mode_include_dir no value no value


Edit:

Cytat
3. z tego co pamiętam adres ip powinien iść na końcu? (może się mylę )

Poszedł na koniec - nic to nie zmieniło ;/

Edit2:
Znalazłem coś interesującego!

Cytat
disable_functions dl,exec,shell_exec,system,passthru,popen,symlink,link,set_time_limit,proc_open,p
roc_close,posix_getpwuid,openlog,glob,disk_free_space,disk_total_space,diskfreesp
ace dl,exec,shell_exec,system,passthru,popen,symlink,link,set_time_limit,proc_open,p
roc_close,posix_getpwuid,openlog,glob,disk_free_space,disk_total_space,diskfreesp
ace


W jaki sposób mogę zmienić plik php.ini jeśli nigdzie na serwerze go nie widzę ;|?
Jak coś nie jest to darmowy hosting smile.gif Płacę za ten serwer spore pieniądze ;0


Ten post edytował modern-web 26.11.2010, 20:03:51


--------------------
Pomogłem? Kliknij `Pomógł`. To nic nie kosztuje, a mnie usatysfakcjonuje! ;)
Go to the top of the page
+Quote Post
mandragorek
post 26.11.2010, 20:09:51
Post #4





Grupa: Zarejestrowani
Postów: 18
Pomógł: 2
Dołączył: 9.03.2007

Ostrzeżenie: (0%)
-----


Ping na Linuksa i na Windowsa ma trochę inne opcje lini poleceń, zajrzyj do manula czego będziesz potrzebował. Nie spotkałem się też z pingowaniem portu, więc może oprócz zmiany opcji spróbuj bez tego :80 na końcu.
Zaś co do modyfikacji php.ini to zostaje prawdopodobnie tylko kontakt z firmą utrzymującą serwer.

Ten post edytował mandragorek 26.11.2010, 20:19:47
Go to the top of the page
+Quote Post
modern-web
post 26.11.2010, 20:28:24
Post #5





Grupa: Zarejestrowani
Postów: 763
Pomógł: 117
Dołączył: 15.03.2010
Skąd: void

Ostrzeżenie: (0%)
-----


Bez portu także próbowałem...
Zmienna $ping zwraca NULL = coś jest między skryptem a serwerem.
Na localhost działa mi bez zarzutów, więc jedyne co pozostało to blokada po stronie serwera.

Napisałem już wiadomość do administratorów hostingu. Zobaczymy co odpiszą...

W każdym razie... Może znacie jakiekolwiek inne sposoby na zmierzenie pingu ;d?
Z chęcią wysłucham Waszych propozycji.


--------------------
Pomogłem? Kliknij `Pomógł`. To nic nie kosztuje, a mnie usatysfakcjonuje! ;)
Go to the top of the page
+Quote Post
CuteOne
post 26.11.2010, 20:31:59
Post #6





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

Ostrzeżenie: (0%)
-----


skoro masz serwer na własność ściągnij nmap ;] i sprawdz czy z nim ci pojdzie

komenda to chyba

nmap -sP pingowane_ip
Go to the top of the page
+Quote Post
kiler129
post 26.11.2010, 20:33:44
Post #7





Grupa: Zarejestrowani
Postów: 566
Pomógł: 35
Dołączył: 21.06.2006

Ostrzeżenie: (0%)
-----


Używanie system() do tego to jak armata na wróbla.
Zapoznaj się z tym jak działa ICMP oraz http://php.net/manual/en/function.socket-create.php winksmiley.jpg

Przykładowy kod niezależny od platformy:
  1. <?PHP
  2. function ping($host, $timeout = 1) {
  3. /* ICMP ping packet with a pre-calculated checksum */
  4. $package = "\x08\x00\x7d\x4b\x00\x00\x00\x00PingHost";
  5. $socket = socket_create(AF_INET, SOCK_RAW, 1);
  6. socket_set_option($socket, SOL_SOCKET, SO_RCVTIMEO, array('sec' => $timeout, 'usec' => 0));
  7. socket_connect($socket, $host, null);
  8.  
  9. $ts = microtime(true);
  10. socket_send($socket, $package, strLen($package), 0);
  11. if (socket_read($socket, 255))
  12. $result = microtime(true) - $ts;
  13. else $result = false;
  14. socket_close($socket);
  15.  
  16. return $result;
  17. }
  18. ?>


edit: No, jeszce nmapa użyjcie i może php na roocie ... ludzie!

Ten post edytował kiler129 26.11.2010, 20:34:42


--------------------
flexiCMS v2 [|||||||+--] 75% done
Go to the top of the page
+Quote Post
md1988
post 27.11.2010, 04:22:28
Post #8





Grupa: Zarejestrowani
Postów: 19
Pomógł: 1
Dołączył: 27.11.2010

Ostrzeżenie: (0%)
-----


Zastanawia mnie tylko po co Ci pingowanie konkretnego portu. Na ping odpowiada komputer, nie aplikacja nasłuchująca na konkretnym porcie. Jeśli chcesz sprawdzić czy pod danym portem funkcjonuje usługa(np. ssh pod portem 22) to badaj to próbując ustanowić połączenie na określony port.
Go to the top of the page
+Quote Post
marcio
post 27.11.2010, 12:04:36
Post #9





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Mozna tez pingowac funckja fsockopen() i stream'em dla plikow w php.
A jak nie odblokuj sobie system/exec/shell_exec i bedzie hulalo.


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
modern-web
post 27.11.2010, 22:30:42
Post #10





Grupa: Zarejestrowani
Postów: 763
Pomógł: 117
Dołączył: 15.03.2010
Skąd: void

Ostrzeżenie: (0%)
-----


Potrafiłbyś przytoczyć pewien przykład?
Manual za dużo mi nie podpowiedział...


--------------------
Pomogłem? Kliknij `Pomógł`. To nic nie kosztuje, a mnie usatysfakcjonuje! ;)
Go to the top of the page
+Quote Post
marcio
post 28.11.2010, 02:57:04
Post #11





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


http://www.zbt.mtvk.pl/?code,ddos.php.txt


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 26.04.2025 - 00:54