static void Main(string[] args) { string host = "www.google.com"; Socket socket = Socks5Client.Connect("localhost", 8081, host, 80, null, null); string userAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:21.0) Gecko/20100101 Firefox/21.0"; byte[] request = Encoding.ASCII.GetBytes(String.Format("GET / HTTP/1.1\r\nHost: {0}\r\nUser-Agent: {1}\r\n\r\n", host, userAgent)); socket.Send(request); byte[] buffer = new byte[2048]; int recv; while ((recv = socket.Receive(buffer, 2048, SocketFlags.None)) > 0) { string response = Encoding.ASCII.GetString(buffer, 0, recv); Console.Write(response); if (!socket.Poll(1000 * 1000, SelectMode.SelectRead)) { break; } } socket.Close(); Console.ReadLine(); }
public static Socket Connect(string socksAddress, int socksPort, string destAddress, int destPort, string username, string password) { Socks5Client client = new Socks5Client(socksAddress, socksPort, destAddress, destPort, username, password); return(client.Connect()); }