Когато клиент на Smack и сървър XMPP работят на една и съща машина за разработка, техните bytestream услуги се нуждаят от съзнателно разпределение на локалните портове. Грешка „Address already in use“ възниква при отваряне на локалния слушател, преди опит за отдалечен трансфер на файл.

Документираният порт по подразбиране за локален SOCKS5 в Smack е 7777. Проверете кой процес вече притежава желаните адрес и порт. Ако това е сървърен прокси, който все още е нужен на други клиенти, резервирайте друг порт за клиента, вместо да изключвате сървърната услуга.

Документираният API Socks5Proxy има setLocalSocks5ProxyPort(int). Отрицателна стойност изисква търсене, започващо от абсолютната ѝ стойност и продължаващо нагоре. Прочетете действителния порт за слушане, когато този избор е разрешен, и го конфигурирайте преди стартиране на слушателя.

Портът, който клиентът обявява, трябва да остане достъпен за участника, който се очаква да се свърже. Изборът на неизползван порт поправя собствеността; той не публикува маршрут през NAT или защитна стена.

Подобни статии