Exemplo n.º 1
0
        public static List <ReverseDns> PraseReverseDns(string PTRText)
        {
            List <ReverseDns> result = new List <ReverseDns>();

            if (!string.IsNullOrWhiteSpace(PTRText))
            {
                var sep     = ";,".ToCharArray();
                var splited = PTRText.Split(sep, StringSplitOptions.RemoveEmptyEntries);

                foreach (var item in splited)
                {
                    if (item.IndexOf(":") != -1)
                    {
                        var        index  = item.IndexOf(":");
                        var        ip     = item.Substring(0, index);
                        var        domain = item.Substring(index + 1);
                        ReverseDns record = new ReverseDns()
                        {
                            IP = ip.Trim(), HostName = domain.Trim()
                        };
                        result.Add(record);
                    }
                }
            }

            return(result);
        }
Exemplo n.º 2
0
        public async Task should_get_reverse_dns_data()
        {
            var rd     = new ReverseDns();
            var actual = await rd.DoLookUp("69.109.161.49", AddressType.Ip);

            Assert.IsNotNull(actual.Data);
            Assert.AreEqual(ServiceStatus.Ok, actual.Status);
        }
Exemplo n.º 3
0
        public async Task should_have_reverse_dns_user_error()
        {
            var rd     = new ReverseDns();
            var actual = await rd.DoLookUp("calebukle.com", AddressType.DomainName);

            Assert.IsNull(actual.Data);
            Assert.IsNotNull(actual.ErrorMessage);
            Assert.AreEqual(ServiceStatus.Bad, actual.Status);
        }
Exemplo n.º 4
0
        public async Task should_handle_reverse_dns_format_error()
        {
            var rd     = new ReverseDns();
            var actual = await rd.DoLookUp("blahg.bad.ip", AddressType.Ip);

            Assert.IsNull(actual.Data);
            Assert.IsNotNull(actual.ErrorMessage);
            Assert.AreEqual(ServiceStatus.Bad, actual.Status);
        }
Exemplo n.º 5
0
        public async Task should_handle_reverse_dns_socket_error()
        {
            var rd = new ReverseDns();
            // ip address that shouldn't resolve.
            var actual = await rd.DoLookUp("18.45.89.54", AddressType.Ip);

            Assert.IsNull(actual.Data);
            Assert.IsNotNull(actual.ErrorMessage);
            Assert.AreEqual(ServiceStatus.Error, actual.Status);
        }