1. A method of profiling an Internet endpoint associated with an Internet endpoint domain name, comprising: generating, by a processor of a computer system, a profiling rule using an Internet search engine; obtaining a search result by inputting the Internet endpoint domain name as a search phrase to the Internet search engine; and classifying, by the processor, the Internet endpoint based on the search result using the profiling rule, wherein the profiling rule comprises a IP tag and a key phrase list having a phrase associated with a URL class, the URL class being associated with the IP tag, wherein the profiling rule further comprises a data structure having an entry, the entry having a first domain name associated with the phrase, wherein the data structure is a cache having a plurality of indexes corresponding to a plurality of values, the plurality of indexes comprising the first domain name, the plurality of values comprising the phrase, wherein the search result comprises: a Uniform Resource Locator (URL) having a second domain name; and a hit text associated with the URL, the hit text comprising the phrase in the key phrase list, wherein classifying the Internet endpoint comprises: assigning the URL class to the URL and assigning the IP tag to the Internet end point in determining the first domain name is the same as the second domain name, wherein generating the profiling rule comprises: adding an index comprising the second domain name to the cache in determining the plurality of indexes do not comprise the second domain name; setting a counter to an initial count; obtaining another search result by inputting another Internet endpoint domain name to the Internet search engine, the another search result comprising another hit text associated with another URL; the another hit text comprising another phrase in the key phrase list; incrementing the counter in determining the another URL comprises the second domain name; and setting a value in the cache corresponding to the index based on at least one selected from a group consisting of the phrase and the another phrase in determining the counter exceeds a pre-determined threshold.
2. The method of claim 1 , wherein generating the profiling rule further comprises: obtaining a seed search result by inputting a seed set to the Internet search engine, the seed set comprising a plurality of randomly chosen Internet endpoint identifiers, the seed search result comprising a plurality of hit texts and another Uniform Resource Locator (URL) associated with another hit text of the plurality of hit texts, the plurality of hit texts comprising a plurality of phrases, the another hit text comprising another phrase of the plurality of phrases, the Internet endpoint identifiers comprising at least one selected from a group consisting of an Internet Protocol (IP) address, a domain name, and an IP prefix; ranking the plurality of phrases to generate a rank of the another phrase based a count of the another phrase in the plurality of hit texts; adding the another phrase to a key phrase list if the count exceeds another pre-determined threshold; assigning another URL class to the another URL if the another phrase is added to the key phrase list, the another URL class being determined from the another phrase based on semantics; determining another IP tag associated with the another URL class, the another IP tag being determined from the another URL class and the another phrase based on semantics; and associating the another phrase with the another URL class in the profiling rule.