Functor Опубликовано 27 июля, 2015 Жалоба Поделиться Опубликовано 27 июля, 2015 После:subnet: 255.0.0.0:127.0.0.1:127.0.0.1добавьте:subnet: 0.0.0.0:188.169.217.8:188.169.217.8 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 27 июля, 2015 Автор Жалоба Поделиться Опубликовано 27 июля, 2015 (изменено) После:subnet: 255.0.0.0:127.0.0.1:127.0.0.1добавьте:subnet: 0.0.0.0:188.169.217.8:188.169.217.8сделал как ты велел) Теперь и меня не пускает на сервер) после того как показал онлайн сервера (Failed to connect server)Вот логин сервер ошибка[status]: Connection of the account 'Stere0' accepted.[info]: Closed connection from '192.168.1.100'.может стоит субнет сделать и для 192.168.1.100'.?? тоесть subnet: 255.0.0.0:127.0.0.1:127.0.0.1subnet: 0.0.0.0:192.168.1.100:192.168.1.100subnet: 0.0.0.0:188.169.217.8:188.169.217.8???? Изменено 27 июля, 2015 пользователем Fizik Ссылка на комментарий Поделиться на другие сайты Поделиться
Functor Опубликовано 27 июля, 2015 Жалоба Поделиться Опубликовано 27 июля, 2015 Попробуйте так:subnet: 255.0.0.0:127.0.0.1:127.0.0.1subnet: 255.255.255.0:192.168.1.100:192.168.1.100subnet: 0.0.0.0:188.169.217.8:188.169.217.8 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Renegade Bastard Опубликовано 28 июля, 2015 Жалоба Поделиться Опубликовано 28 июля, 2015 Вы копаете не туда. Зачем вообще трогать subnet если все три сервера (чар мап логин) находятся на одной машине и взаимодействуют через loopback интерфейс. Во всех конфигах должно быть указано 127.0.0.1 кроме login_athena.conf где в директиве bind_ip: указывается ип интерфейса через который он смотрит в мир. Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 28 июля, 2015 Автор Жалоба Поделиться Опубликовано 28 июля, 2015 Вы копаете не туда. Зачем вообще трогать subnet если все три сервера (чар мап логин) находятся на одной машине и взаимодействуют через loopback интерфейс. Во всех конфигах должно быть указано 127.0.0.1 кроме login_athena.conf где в директиве bind_ip: указывается ип интерфейса через который он смотрит в мир.Уууу... Если визде указать 127 0 0 1 кроме логина... Он будет заходить но нечего не будет сохранятся в базу данных Ссылка на комментарий Поделиться на другие сайты Поделиться
Renegade Bastard Опубликовано 28 июля, 2015 Жалоба Поделиться Опубликовано 28 июля, 2015 Уууу... Если визде указать 127 0 0 1 кроме логина... Он будет заходить но нечего не будет сохранятся в базу данныхбаза у тебя где стоит? Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 28 июля, 2015 Автор Жалоба Поделиться Опубликовано 28 июля, 2015 Дома, на айпи 192.168.1.100 (Тоже самое указанно в чар и мап)в логине (бинд ип) я не открывал вообще Ссылка на комментарий Поделиться на другие сайты Поделиться
Renegade Bastard Опубликовано 28 июля, 2015 Жалоба Поделиться Опубликовано 28 июля, 2015 (изменено) Дома, на айпи 192.168.1.100 (Тоже самое указанно в чар и мап)в логине (бинд ип) я не открывал вообщеесли у тебя всё на одной машине - везде укажи 127.0.0.1 а в login_athena.conf 192.168.1.100на роутере проброс портов с твоего внешнего ипа на локальный 192.168.1.100subnet Трогать не нужно. Изменено 28 июля, 2015 пользователем Renegade Bastard 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 28 июля, 2015 Автор Жалоба Поделиться Опубликовано 28 июля, 2015 Бинд Ип открывать только в логине? Ссылка на комментарий Поделиться на другие сайты Поделиться
Renegade Bastard Опубликовано 28 июля, 2015 Жалоба Поделиться Опубликовано 28 июля, 2015 только в логине. все остальные серверы должны взаимодействовать междк собой через loopdack если находятся на одной машине. Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 28 июля, 2015 Автор Жалоба Поделиться Опубликовано 28 июля, 2015 (изменено) только в логине.все остальные серверы должны взаимодействовать междк собой через loopdack если находятся на одной машине.Чт такое Loopdack?[Error]: make_connection: connect failed (socket #3, error 10061: No connectioncould be made because the target machine actively refused it.)!Чар сервер нехочет так коннектится как ты говоришь))) Визде 127 0 0 1 а в логине 192 168 1 100 Изменено 28 июля, 2015 пользователем Fizik Ссылка на комментарий Поделиться на другие сайты Поделиться
Functor Опубликовано 28 июля, 2015 Жалоба Поделиться Опубликовано 28 июля, 2015 Вы копаете не туда. Зачем вообще трогать subnet если все три сервера (чар мап логин) находятся на одной машине и взаимодействуют через loopback интерфейс. Во всех конфигах должно быть указано 127.0.0.1 кроме login_athena.conf где в директиве bind_ip: указывается ип интерфейса через который он смотрит в мир. Правильно копаем. login сервер после подключения игрока, посылает пакет(0x69) с IP адресами char серверов. По которых и производиться подключение клиентом после выбора сервера. Если не настроить subnet_athena.conf, то в пакетах окажется 192.168.1.100 или 127.0.0.1 И при попытке игрока подключиться по этим IP ничего хорошего не получится. 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Renegade Bastard Опубликовано 28 июля, 2015 Жалоба Поделиться Опубликовано 28 июля, 2015 (изменено) loopback это и есть 127.0.01 если не канектится то у тебя чтото не так. давй начнём сначала и по порядку, заканчивается вторая страница а досихпор ничего не понятно. какая ОС какая БД схема подключения схему я представляю себе так посмотри чтоб у тебя в голове хотябы примерно прояснилась маршрутизация да что ж тут со шрифтами на форуме бляхамуха. в тегах "код" текст вообще не должен менять форматирование. Ну да ладно. Если не настроить subnet_athena.conf, то в пакетах окажется 192.168.1.100 или 127.0.0.1 И при попытке игрока подключиться по этим IP ничего хорошего не получится. с какой стати если перед ним роутер выполняет prerouting+postrouting+MASQUERADE я бы не был так уверен в высказываниях если б у меня сервер уже 5 с половиной лет не работал за натом. Да там управляемая циска натит, но смысл абсолютно тот же. У него на кампе впринципе НЕТ интерфейса с ипом 188.169.217.8 посиму ни один сервис не сможет слушать на этом адресе. Более того, его комп вообще ничего не знает об ипе 188.169.217.8 и НЕ ЗНАЕТ как к нему попасть. Всё что он знает это то что есть некое устройство по адресу 192.168.1.1 которое знает как попасть к адресу 188.169.217.8. Изменено 28 июля, 2015 пользователем Renegade Bastard Ссылка на комментарий Поделиться на другие сайты Поделиться
Кеник Опубликовано 28 июля, 2015 Жалоба Поделиться Опубликовано 28 июля, 2015 Там схема мутная с подключением к провайдеру через модем. Роутера, как он мне сказал - нет. Ссылка на комментарий Поделиться на другие сайты Поделиться
Functor Опубликовано 28 июля, 2015 Жалоба Поделиться Опубликовано 28 июля, 2015 с какой стати если перед ним роутер выполняет prerouting+postrouting+MASQUERADEя бы не был так уверен в высказываниях если б у меня сервер уже 5 с половиной лет не работал за натом. Да там управляемая циска натит, но смысл абсолютно тот же.Вы заблуждаетесь. Я говорю про передачу IP серверов не в служебных полях пакета, а в качестве данных.А в разделе данных никакой роутер не имеет права ничего корректировать.WFIFOHEAD(fd,47+32*server_num);WFIFOW(fd,0) = 0x69;WFIFOW(fd,2) = 47+32*server_num;WFIFOL(fd,4) = sd->login_id1;WFIFOL(fd,8) = sd->account_id;WFIFOL(fd,12) = sd->login_id2;WFIFOL(fd,16) = 0; // in old version, that was for ip (not more used)//memcpy(WFIFOP(fd,20), sd->lastlogin, 24); // in old version, that was for name (not more used)memset(WFIFOP(fd,20), 0, 24);WFIFOW(fd,44) = 0; // unknownWFIFOB(fd,46) = sex_str2num(sd->sex);for( i = 0, n = 0; i < ARRAYLENGTH(server); ++i ){if( !session_isValid(server[i].fd) )continue;subnet_char_ip = lan_subnetcheck(ip); // Advanced subnet check [LuzZza]WFIFOL(fd,47+n*32) = htonl((subnet_char_ip) ? subnet_char_ip : server[i].ip);WFIFOW(fd,47+n*32+4) = ntows(htons(server[i].port)); // [!] LE byte order here [!]memcpy(WFIFOP(fd,47+n*32+6), server[i].name, 20);WFIFOW(fd,47+n*32+26) = server[i].users;WFIFOW(fd,47+n*32+28) = server[i].type;WFIFOW(fd,47+n*32+30) = server[i].new_;n++;}WFIFOSET(fd,47+32*server_num); Ссылка на комментарий Поделиться на другие сайты Поделиться
Renegade Bastard Опубликовано 28 июля, 2015 Жалоба Поделиться Опубликовано 28 июля, 2015 Вы заблуждаетесь. Ну да, конечноhttp://prntscr.com/7xwm3j Ссылка на комментарий Поделиться на другие сайты Поделиться
Renegade Bastard Опубликовано 28 июля, 2015 Жалоба Поделиться Опубликовано 28 июля, 2015 (изменено) Там схема мутная с подключением к провайдеру через модем. Роутера, как он мне сказал - нет.ADSL-модем посути является роутером-мыльницей. Типа домашнего dir-300хотя могу быть и не прав.... ТС, скажи, модем сам поднимает канект и ты находишься в его LAN подсети 192.168.1.0 либо он подключается какнить по USB и ты в винде поднимаешь канект? Это две большие разницы. Во втором случае подменяется маршрут по умолчанию и настраивать серверную часть нужно по другому. Изменено 28 июля, 2015 пользователем Renegade Bastard Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 28 июля, 2015 Автор Жалоба Поделиться Опубликовано 28 июля, 2015 Попробуйте так:subnet: 255.0.0.0:127.0.0.1:127.0.0.1subnet: 255.255.255.0:192.168.1.100:192.168.1.100subnet: 0.0.0.0:188.169.217.8:188.169.217.8Спасибо)) Это помогло друг сидит и играет ) 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Functor Опубликовано 28 июля, 2015 Жалоба Поделиться Опубликовано 28 июля, 2015 Ну да, конечно http://prntscr.com/7xwm3j 100% И что я тут должен был увидеть? Где дамп сетевых пакетов? Как Вы думаете, что делает код, который я привел в пример? Зачем он передает клиенту IP и порты char серверов? Ссылка на комментарий Поделиться на другие сайты Поделиться
Renegade Bastard Опубликовано 28 июля, 2015 Жалоба Поделиться Опубликовано 28 июля, 2015 (изменено) И что я тут должен был увидеть? Где дамп сетевых пакетов?tcpdump -i eth1 -ln port 6900tcpdump: verbose output suppressed, use -v or -vv for full protocol decodelistening on eth1, link-type EN10MB (Ethernet), capture size 65535 bytes12:55:46.562001 IP 5.153.135.50.5220 > 192.168.0.100.6900: Flags [S], seq 600832856, win 65535, options [mss 1272,nop,nop,sackOK], length 012:55:46.562085 IP 192.168.0.100.6900 > 5.153.135.50.5220: Flags [S.], seq 1322001937, ack 600832857, win 29200, options [mss 1460,nop,nop,sackOK], length 012:55:46.584670 IP 5.153.135.50.5220 > 192.168.0.100.6900: Flags [.], ack 1, win 65535, length 012:55:46.587835 IP 5.153.135.50.5220 > 192.168.0.100.6900: Flags [P.], seq 1:56, ack 1, win 65535, length 5512:55:46.587888 IP 192.168.0.100.6900 > 5.153.135.50.5220: Flags [.], ack 56, win 29200, length 012:55:46.591484 IP 192.168.0.100.6900 > 5.153.135.50.5220: Flags [P.], seq 1:80, ack 56, win 29200, length 7912:55:46.614758 IP 5.153.135.50.5220 > 192.168.0.100.6900: Flags [F.], seq 56, ack 80, win 65456, length 012:55:46.614924 IP 192.168.0.100.6900 > 5.153.135.50.5220: Flags [F.], seq 80, ack 57, win 29200, length 012:55:46.637321 IP 5.153.135.50.5220 > 192.168.0.100.6900: Flags [.], ack 81, win 65456, length 0 Изменено 28 июля, 2015 пользователем Renegade Bastard Ссылка на комментарий Поделиться на другие сайты Поделиться
Functor Опубликовано 28 июля, 2015 Жалоба Поделиться Опубликовано 28 июля, 2015 tcpdump -i eth1 -ln port 6900tcpdump: verbose output suppressed, use -v or -vv for full protocol decodelistening on eth1, link-type EN10MB (Ethernet), capture size 65535 bytes12:55:46.562001 IP 5.153.135.50.5220 > 192.168.0.100.6900: Flags [S], seq 600832856, win 65535, options [mss 1272,nop,nop,sackOK], length 012:55:46.562085 IP 192.168.0.100.6900 > 5.153.135.50.5220: Flags [S.], seq 1322001937, ack 600832857, win 29200, options [mss 1460,nop,nop,sackOK], length 012:55:46.584670 IP 5.153.135.50.5220 > 192.168.0.100.6900: Flags [.], ack 1, win 65535, length 012:55:46.587835 IP 5.153.135.50.5220 > 192.168.0.100.6900: Flags [P.], seq 1:56, ack 1, win 65535, length 5512:55:46.587888 IP 192.168.0.100.6900 > 5.153.135.50.5220: Flags [.], ack 56, win 29200, length 012:55:46.591484 IP 192.168.0.100.6900 > 5.153.135.50.5220: Flags [P.], seq 1:80, ack 56, win 29200, length 7912:55:46.614758 IP 5.153.135.50.5220 > 192.168.0.100.6900: Flags [F.], seq 56, ack 80, win 65456, length 012:55:46.614924 IP 192.168.0.100.6900 > 5.153.135.50.5220: Flags [F.], seq 80, ack 57, win 29200, length 012:55:46.637321 IP 5.153.135.50.5220 > 192.168.0.100.6900: Flags [.], ack 81, win 65456, length 0Вы дальше не хотите понимать разницу между служебной информацией и данными в пакете...Попытайтесь ответить на все вопросы из моего предыдущего поста и, возможно, Вам станет все понятно.Как Вы думаете, что делает код, который я привел в пример?Зачем он передает клиенту IP и порты char серверов? Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения