An IP address (Internet Protocol address) is a unique address that devices use in order to identify and communicate with each other on a computer network utilizing the Internet Protocol standard (IP). In more simple terms, a computer address. Any participating network device — including routers, computers, time-servers, printers, Internet fax machines, and some telephones — can have their own unique address.
An IP address can also be thought of as the equivalent of a street address or a phone number (compare: VoIP) for a computer or other network device on the Internet. Just as each street address and phone number uniquely identifies a building or telephone, an IP address can uniquely identify a specific computer or other network device on a network.
An IP address can appear to be shared by multiple client devices either because they are part of a shared hosting web server environment or because a proxy server (e.g. an ISP or anonymizer service) acts as an intermediary agent on behalf of its customers, in which case the real originating IP addresses might be hidden from the server receiving a request. TheThe analogy to telephone systems would be the use of predial numbers (proxy) and extensions (shared).
IP addresses are managed and created by the Internet Assigned Numbers Authority. IANA generally assigns super-blocks to Regional Internet Registries, who in turn allocate smaller blocks to Internet Service Providers and enterprises.
IP header size is 20 bytes.
IP versions
The Internet Protocol has two primary versions in use. Each version has its own definition of an IP address. Because of its prevalence, "IP address" typically refers to those defined by IPv4.
IP version 4
-
IPv4 uses 32-bit (4 byte) addresses, which limits the address space to 4,294,967,296 (232) possible unique addresses. However, many are reserved for special purposes, such as private networks (~18 million addresses) or multicast addresses (~1 million addresses). This reduces the number of addresses that can be allocated as public Internet addresses, and as the number of addresses available is consumed, an IPv4 address shortage appears to be inevitable in the long run. This limitation has helped stimulate the push towards IPv6, which is currently in the early stages of deployment and is currently the only contender to replace IPv4.
Example: 192.168.1.1
IP version 5
- What would be considered IPv5 existed only as an experimental non-IP real time streaming protocol called ST2, described in RFC 1819. In keeping with standard UNIX release conventions, all odd-numbered versions are considered experimental, and this version was never intended to be implemented, thus not abandoned. RSVP has replaced it to some degree.
IP version 6
- In IPv6, the new (but not yet widely deployed) standard protocol for the Internet, addresses are 128 bits wide, which, even with a generous assignment of netblocks, should suffice for the foreseeable future. In theory, there would be exactly 2128, or about 3.403 × 1038 unique host interface addresses. The exact number is 340,282,366,920,938,463,463,374,607,431,768,211,456. This large address space will be sparsely populated, which makes it possible to again encode more routing information into the addresses themselves.
This magnitude of IPs available will be necessary in the future as mobile phones, cars and all types of personal devices come to rely on the internet for everyday purposes.
Ping is a computer network tool used to test whether a particular host is reachable across an IP network. Ping works by sending ICMP "echo request" packets ("Ping?") to the target host and listening for ICMP "echo response" replies (sometimes dubbed "Pong!" as an analog from the Ping Pong table tennis sport.) Using interval timing and response rate, ping estimates the round-trip time (generally in milliseconds although the unit is often omitted) and packet loss (if any) rate between hosts.
The word ping is also frequently used as a verb or noun, where it can refer directly to the round-trip time, the act of running a ping program or measuring the round-trip time. See also: Ping (video games)
Sample pinging
The following is a sample output of pinging www.google.com under Linux with the iputils version of ping:
$ ping www.google.com PING www.l.google.com (64.233.183.103) 56(84) bytes of data. 64 bytes from 64.233.183.103: icmp_seq=1 ttl=246 time=22.2 ms 64 bytes from 64.233.183.103: icmp_seq=2 ttl=245 time=25.3 ms 64 bytes from 64.233.183.103: icmp_seq=3 ttl=245 time=22.7 ms 64 bytes from 64.233.183.103: icmp_seq=4 ttl=246 time=25.6 ms 64 bytes from 64.233.183.103: icmp_seq=5 ttl=246 time=25.3 ms 64 bytes from 64.233.183.103: icmp_seq=6 ttl=245 time=25.4 ms 64 bytes from 64.233.183.103: icmp_seq=7 ttl=245 time=25.4 ms 64 bytes from 64.233.183.103: icmp_seq=8 ttl=245 time=21.8 ms 64 bytes from 64.233.183.103: icmp_seq=9 ttl=245 time=25.7 ms 64 bytes from 64.233.183.103: icmp_seq=10 ttl=246 time=21.9 ms --- www.l.google.com ping statistics --- 10 packets transmitted, 10 received, 0% packet loss, time 9008ms rtt min/avg/max/mdev = 21.896/24.187/25.718/1.619 ms
Proxy server
From Wikipedia, the free encyclopedia
A diagram of a standard proxy A proxy server is a computer that offers a computer network
service to allow clients to make indirect network connections
to other network services. A client connects to the proxy server,
then requests a connection, file, or other resource available on
a different server. The proxy provides the resource either by
connecting to the specified server or by serving it from a cache.
In some cases, the proxy may alter the client's request or the
server's response for various purposes
Anonymous
In using a proxy server (for example, anonymizing HTTP proxy),
all data sent to the service being used (for example, HTTP
server in a website) must pass through the proxy server before
being sent to the service, mostly in unencrypted form. It is
therefore possible, and has been demonstrated (see, for example,
Sugarcane) for a malicious proxy server to record everything sent to the proxy: including unencrypted logins and passwords.
By chaining proxies which do not reveal data about the original
requester, it is possible to obfuscate activities from the eyes
of the user's destination. However, more traces will be left on
the intermediate hops, which could be used or offered up to trace the user's activities. If the policies and administrators of these other proxies are unknown, the user may fall victim to a false sense of security just because those details are out of sight and mind.
The bottom line of this is to be wary when using proxy servers,
and only use proxy servers of known integrity (e.g., the owner is known and trusted, has a clear privacy policy, etc.), and never use proxy servers of unknown integrity. If there is no choice but to use unknown proxy servers, do not pass any private information (unless it is properly encrypted) through the proxy.
In what is more of an inconvenience than a risk, proxy users may
find themselves being blocked from certain Web sites, as numerous forums and Web sites block IP addresses from proxies known to have spammed or trolled the site.
- The Squid cache is a popular HTTP proxy server in the UNIX/Linux world.*
- The HTTP-Tunnel is a popular SOCKS proxy server and Client for Windows.*
- The Apache HTTP Server can be configured to act as a proxy server.
- Blue Coat's (formerly Cacheflow's) purpose-built SGOS proxies 15 protocols including HTTPS/SSL, has an extensive policy engine and runs on a range of appliances from branch-office to enterprise.
- WinGate is a multi-protocol proxy server and NAT solution that can be used to redirect any kind of traffic on a Microsoft Windows host. It also provides firewall, VPN and mail server functionality.
- Privoxy is a free, open source web proxy with privacy features
- Microsoft Internet Security and Acceleration Server is a product that runs on Windows 2000/2003 servers and combines the functions of both a proxy server and a firewall.
- Tor - A proxy-based anonymizing Internet communication system
- Proxomitron - User-configurable web proxy used to re-write web pages on the fly. Most noted for blocking ads, but has many other useful features.
- PHProxy is a Web HTTP proxy programmed in PHP to bypass firewalls and other proxy restrictions through a Web interface very similar to the popular CGIProxy.
- SJSWebProxy (SunMicrosystems) is a proxy server for HTTP and HTTPS (CONNECT) requests. It can also serve as a gateway for Ftp and Gopher traffic. It is also free for download.
- Nginx Web and Reverse proxy server, that can act as POP3 proxy server.
- Ssh Secure Shell can be configured to proxify a connection, by setting up a SOCKS proxy on the client, and tunneling the traffic through the SSH connection.