Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2013-09-02 18:25:00

  hornet - Maruda

hornet
Maruda
Zarejestrowany: 2006-12-19

[ejabberd] problem z p2p

Cześć,

Mam problem z transferami plików. Można by rzec, że prawie działają, ale jest problem z niskim transferem, który w końcu po jakimś czasie pada.

Mam otwartego VBoxa z XP na pokładzie (NAT), zainstalowany najnowszy AQQ, na Gentoo działa sobie Gajim, do serwera również wychodzę przez NAT. Serwer xmpp uruchomiony na Debianie 7.1.

Scenariusz pierwszy:
Windows: konto @moja.domena.pl
Linux: konto @aqq.eu

Wysyłam plik testowy (@moja.domena.pl), zatwierdzam pobieranie (@aqq.eu). Transfer ok. 1 kB/s, po przetransferowaniu 160 kB zawiesza się, otrzymuję błąd połączenia.

Scenariusz drugi:
Windows: konto @aqq.eu
Linux: konto @moja.domena.pl

Wysyłam plik tekstowy (@moja.domena.pl), zatwierdzam pobieranie (@aqq.eu). Transfer 16,8 MB/s, wszystko w porządku.

Dodam, że problem występuje jeszcze z jabster.pl.

W jaki sposób to naprawić? Czego nie skonfigurowałem?


[b]Jestem artystą. Tworzę rzeźbę. Rzeźbę swojego życia - dosłownie i w przenośni.[/b]

Offline

 

#2  2013-09-02 22:10:26

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: [ejabberd] problem z p2p

Spróbuj wystawić Ejabberd na publicznym Ip, do którego jest przypisana domena.
Mam na myśli wszystkie porty na których słucha ejabbgerd.
W ogóle taka usługa, jak serwer jabbera wystawiony przez NAT, to proszenie się o kłopoty.

Jeśli jest na Vboxie, to zamiast NAT stawiasz vboxnet0, w konfigu Vboxa/maszyny,  karty vboxnetX jest widziana w systemie gospodarza z własnym adresem, routing i przekierowania między eth0 a vboxnet0 da się wyrzeźbić, choć rzeźbienia troszkę jest.

W przeciwieństwie do Vboxowego NAT, przy vboxnetX sieć jest pod kontrolą,


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#3  2013-09-02 22:49:04

  hornet - Maruda

hornet
Maruda
Zarejestrowany: 2006-12-19

Re: [ejabberd] problem z p2p

Nie zauważyłem limitu przy module proxy65, zdefiniowanym tutaj:

Kod:

%% The "normal" shaper limits traffic speed to 1.000 B/s
%%
{shaper, normal, {maxrate, 1000}}.

Wygląda na to, że to to. Nie wiedziałem co to, więc zakomentowałem, a potem odszukałem w configu co znaczy definicja shaper. Teraz chodzi dobrze.

Dziękuję bardzo za Twój post Jacku, ale źle mnie zrozumiałeś. Stoi na publicznym IP, tylko za NAT to testowałem z dwóch hostów.

Wszystko prawdopodobnie jest w porządku. Choć jeszcze nie oznaczam [SOLVED] - poczekam na dalsze problemy. Jeszcze tylko port 7777 odblokuje i włączę filtry, bo na czas zabawy wszystko wyłączyłem.

Kod:

=INFO REPORT==== 2013-09-02 22:37:01 ===
I(<0.308.0>:ejabberd_listener:281) : (#Port<0.2083>) Accepted connection {{82,160,113,1},42555} -> {{37,187,98,68},7777}

Czyli ogółem będzie tak:

Kod:

$IPTABLES -A INPUT -p tcp --dport 5222 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp --dport 5269 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp --dport 7777 -m state --state NEW -j ACCEPT

Nawiązane puszczam luzem.

Ostatnio edytowany przez hornet (2013-09-02 22:49:58)


[b]Jestem artystą. Tworzę rzeźbę. Rzeźbę swojego życia - dosłownie i w przenośni.[/b]

Offline

 

#4  2013-09-02 23:06:31

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: [ejabberd] problem z p2p

Ejabberd jest dosyć wrażliwy na ataki dos, daj na tych portach connlimit i haslimit, żeby ograniczyć liczę możliwych równoczesnych połączeń, i przede wszystkim nowych połączeń.

Jak się bawiłem Jabberem, to miałem coś takiego:

Kod:

iptables -A INPUT  ! -i lo -p tcp --dport 5269  -m connlimit --connlimit-upto 10 --connlimit-mask 0 --connlimit-saddr -m hashlimit --hashlimit-upto 5/min --hashlimit-burst 5 --hashlimit-mode srcip --hashlimit-name xmpp -j ACCEPT

W bardziej hardcorowej tak:

Kod:

 iptables -N XMPP
iptables -A XMPP ! -i lo  -m state --state NEW -m set --match-set spamhaus src -j STEAL
iptables -A XMPP ! -i lo  -m state --state NEW  -m set --match-set sblamdrop src -j STEAL
iptables -A XMPP ! -i lo  -m connlimit --connlimit-upto 10 --connlimit-mask 0 --connlimit-saddr -m hashlimit --hashlimit-upto 3/min --hashlimit-burst 3 --hashlimit-mode srcip --hashlimit-name xmpp -j ACCEPT
 iptables -A INPUT -i eth0 -p tcp --dport 5269 -j XMPP

Poza tym w grę wchodzą również inne porty, nie wiem, czy uruchamiasz stun i komunikację głosową, ale tam dopiero jest jazda z portami tcp i udp.
Na zewnątrz wystawiałem tylko port s2s, obie wersje działały i serwerek się grzecznie awanturował z rożnymi serwerami. :D

I oczywiście, jeśli ma gadać w domenie, to trzeba zrobić rekordy srv w strefie DNS.
http://wiki.xmpp.org/web/SRV_Records

Jeśli z jakimś serwerem nie będzie się łączyć, to przyda się dodać adresy hostów do /etc/hosts, np Jabber.org i Gmail:

Kod:

208.68.163.221                hermes.jabber.org
208.68.163.221                hermes6.jabber.org
2605:da00:5222:5269::2:1      hermes6.jabber.org

209.85.148.19    gmail.com
209.85.148.83    gmail.com
209.85.148.17    gmail.com
209.85.148.18    gmail.com
209.85.175.125    alt1.xmpp-server.l.google.com
74.125.127.125    alt4.xmpp-server.l.google.com
74.125.39.125    xmpp-server.l.google.com
72.14.203.125    alt3.xmpp-server.l.google.com
74.125.71.125    alt2.xmpp-server.l.google.com
209.85.225.26    alt2.gmail-smtp-in.l.google.com
74.125.127.26    alt1.gmail-smtp-in.l.google.com
74.125.93.27    alt4.gmail-smtp-in.l.google.com
74.125.39.27    gmail-smtp-in.l.google.com
74.125.159.27    alt3.gmail-smtp-in.l.google.com
74.125.39.108    gmail-smtp-msa.l.google.com
74.125.39.109    gmail-smtp-msa.l.google.com
74.125.79.108    gmail-imap.l.google.com
74.125.79.109    gmail-imap.l.google.com

Gmail razem z pocztą, ale nie chciało mi się teraz kombinować, które są do czego. :D
Pidginowi i Gajmowi takie wpisy też pomagają.
Do tego lokalny cache-dns - i powinno brykać.

I pamiętaj przy okazji o porcie ssl/5223, przy szyfrowanym połączeniu ten stary system jest nawet lepszym rozwiązaniem, niż szyfrowanie TLS włączane na żądanie przez startlts.

Ostatnio edytowany przez Jacekalex (2013-09-02 23:20:54)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#5  2013-09-02 23:32:09

  hornet - Maruda

hornet
Maruda
Zarejestrowany: 2006-12-19

Re: [ejabberd] problem z p2p

Mógłbyś mi podać uprawnienia do configa głównego:

Kod:

ls -la ejabberd.cfg
-rw------- 1 root ejabberd 17000 wrz  2 23:03 ejabberd.cfg

Bo chyba coś przez przypadek popsułem...

DNS mam załatwione:

Kod:

_xmpp-client._tcp.frogeater.eu. 18000   IN      SRV     0       5       5222    frogeater.eu.
_xmpp-server._tcp.frogeater.eu. 18000   IN      SRV     0       5       5269    frogeater.eu.

Wydaje mi się, że póki co wszystko działa co chciałem (ogólna komunikacja i transfery plików). Niczym innym nie byłem zainteresowany, ale zainteresowałeś mnie.

No prawie działa... ;)


[b]Jestem artystą. Tworzę rzeźbę. Rzeźbę swojego życia - dosłownie i w przenośni.[/b]

Offline

 

#6  2013-09-02 23:35:53

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: [ejabberd] problem z p2p

Możesz spokojnie dać na pliki konfiguracyjne 640 lub jakby nie banglało, 644, właściciel root i grupa do której należy ejabberd.
I oczywiście 750 lub 755 na folder z tymi plikami, user i grupa tak samo.

A jak chcesz się bawić, to Ejabberd obsługuje komunikację Audio i Video.
Do tego ma bardzo sympatyczny panel do administrowania kontami.

Ostatnio edytowany przez Jacekalex (2013-09-02 23:38:43)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#7  2014-10-14 15:11:33

  hornet - Maruda

hornet
Maruda
Zarejestrowany: 2006-12-19

Re: [ejabberd] problem z p2p

Odgrzebuje.

Problem powrócił. Wcześniej miałem łącze, które dochodziło do max 1Mb/s (upload) i nic nie zauważyłem. Teraz mam koło 10 Mb/s i jest problem.

Kod:

{mod_proxy65,  [{ip, {xx,xx,xx,xx}}]},

Konfiguracja modułu minimalna. Można ustawić jeszcze port, ograniczenie prędkości. Ale zaraz.. ja nie mam żadnego ograniczenia, a max rate to 1 Mb/s, a fajnie byłoby mieć chociaż te 8-10 Mb/s. Oczywiście łącze serwera pozwoli na to.


W czym może być problem?

Pozdrawiam.


[b]Jestem artystą. Tworzę rzeźbę. Rzeźbę swojego życia - dosłownie i w przenośni.[/b]

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)

[ Generated in 0.014 seconds, 11 queries executed ]

Informacje debugowania

Time (s) Query
0.00011 SET CHARSET latin2
0.00004 SET NAMES latin2
0.00188 SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='18.223.0.53' WHERE u.id=1
0.00090 REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.223.0.53', 1714752339)
0.00060 SELECT * FROM punbb_online WHERE logged<1714752039
0.00050 SELECT topic_id FROM punbb_posts WHERE id=277524
0.00182 SELECT id FROM punbb_posts WHERE topic_id=24182 ORDER BY posted
0.00147 SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=24182 AND t.moved_to IS NULL
0.00011 SELECT search_for, replace_with FROM punbb_censoring
0.00177 SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=24182 ORDER BY p.id LIMIT 0,25
0.00133 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=24182
Total query time: 0.01053 s