O'Reilly logo

Killer Game Programming in Java by Andrew Davison

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Firewalls

Firewalls are unfortunately a part of today's networking experience. Most companies, government institutions, universities, and so on, utilize firewalls to block access to the wider Internet: socket creation on all nonstandard ports, and most standard ones, are typically prohibited, and web pages must be retrieved through a proxy that filters (limits) the traffic.

Tip

The firewall-related examples in this section can be found in the NetBasics/Firewall/ directory.

This situation means that the code described so far may not work because it requires the creation of sockets. The DayPing example given below is a Java application that attempts to contact a "time-of-day" server. The example below uses the server at the National Institute of Standards and Technology in Boulder, Colorado:

    >java DayPing time-A.timefreq.bldrdoc.gov
    time-A.timefreq.bldrdoc.gov is alive at

    53394 05-01-24 09:16:12 00 0 0 525.7 UTC(NIST) *

DayPing opens a socket to the host at port 13, where the standard time-of-day service is listening. The response is printed out using println() after layering a BufferedReader stream on top of the network link:

 public class DayPing { public static void main(String args[]) throws IOException { if (args.length != 1) { System.out.println("usage: java DayPing <host> "); System.exit(0); } Socket sock = new Socket(args[0],13); // host and port BufferedReader br = new BufferedReader( new InputStreamReader( sock.getInputStream() ) ); System.out.println( args[0] + " is alive at ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required