Bonsoir,
Apres avoir désactiver la sécurité qui vérifie l'adresse IP dans la config de Dofus, je ne comprends pas pourquoi lorsque j'ouvre un client dofus coté application le serveur d'authentification ne le reconnait pas ou bien a quel moment doit-il le reconnaitre ? Doit-il le reconnaître une fois entrer des identifiants sur le client save dans une BDD et lu depuis l'application ?
Voici les codes :
Config :
Finalement pour résumer dans le cas ou je n'ai pas été clair , ma question c'est quand est-ce que le client dofus est-il accepté par la socket AuthServer ?
Apres avoir désactiver la sécurité qui vérifie l'adresse IP dans la config de Dofus, je ne comprends pas pourquoi lorsque j'ouvre un client dofus coté application le serveur d'authentification ne le reconnait pas ou bien a quel moment doit-il le reconnaitre ? Doit-il le reconnaître une fois entrer des identifiants sur le client save dans une BDD et lu depuis l'application ?
Voici les codes :
C#:
public abstract class ServerBase
{
protected Socket _server;
protected Socket _client;
public int Port { get; protected set; }
public int Backlog { get; protected set; }
public string IP { get; protected set; }
public IPEndPoint ServerIPEndPoint { get; private set; }
public ServerBase()
{
this._server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
this.Port = 443;
this.Backlog = 100;
this.IP = "127.0.0.1";
this.ServerIPEndPoint = new IPEndPoint(IPAddress.Parse(IP), Port);
}
public void Initialize()
{
Bind();
Listen();
Accept();
}
private void Bind() => this._server.Bind(ServerIPEndPoint);
private void Listen()
{
this._server.Listen(Backlog);
Console.WriteLine($"On commence a écouter les clients sur le chemin : <{Port}:{IP}>");
}
protected void Accept() => this._server.BeginAccept(AcceptedCallback, null);
protected abstract void AcceptedCallback(IAsyncResult ar);
}
C#:
public class AuthServer : ServerBase
public class AuthServer : ServerBase
{
private AuthClient m_authClient;
public AuthServer() : base() { }
protected override void AcceptedCallback(IAsyncResult ar)
{
base._client = base._server.EndAccept(ar);
this.m_authClient = new AuthClient(_client);
Console.WriteLine("New client Connected !");
/* SEND ProtocolRequired
* SEND HelloConnectMessage
* Initialize authClient
*/
base.Accept();
}
}
XML:
<!--======================================================================-->
<!-- Constantes pour l'accès au serveur -->
<!--======================================================================-->
<entry key="connection.useSniffer" type="Boolean" >false</entry>
<entry key="connection.snifferHost">127.0.0.1</entry>
<entry key="connection.snifferPort" type="int">18001</entry>
<entry key="connection.host">127.0.0.1</entry>
<entry key="connection.host.signature">AARBS1NGAAEAAACACZ9+mr1yAiQ8Iug2hODrUxKfQeviR0QJB/fzthrCQRA3/rSEDPkqL3ojfJsLu/07VkebfaCegbYtR5tQlg6voAMgDMX9FlP6KtQWnLXVUKkOye1pt01gb3uLUBrqm9o/3Lrgo38xuHs67jvAy1Yyo1bwk6JycE0H9yWnjg+WBmI=</entry>
<entry key="connection.port">443</entry>
<entry key="spin.chat.host">zaap-chat.ankama.com</entry>
<entry key="spin.chat.port">6336</entry>