Effective Web Site Development – Tools and Techniques and Windows 8 – Absolute Beginners Guide…

October 22, 2015

effective website development

Effective Web Site Development – Tools and techniques.

This book I borrowed from the National Library (PNM) recently. It’s quite a good book that tells us about how to do a website project , design it and upload it into the server. Effective Website Development examines the entire Web Development project lifecycle and covers a range of Web development tools and techniques including XML , XHTML and Dreamweaver. The author – Keith Darlington takes a step-by-step approach , leading from one concept to the next , and provides the reader with the expertise to design , build and maintain dynamic websites.

Like many other projects , developing a website requires planning and analysis. The purpose of planning and analysis is to:-

1. Establish the feasibility of the project.

2. Determine the user’s requirements

3. Create a work plan.

The feasibility of the project.

A web project must begin with a list of criteria to determine whether or not the project is worthwhile. Given the diverse nature of websites , these criteria can vary considerably, Almost all organizations nowadays have some Web presence , but this can vary from sites containing a few pages describing what the organization does , to a site that contains several hundreds of pages of details. Clearly , the beneficiaries of the site will have a limited budget to allocate to the development of a site. Development and maintenance costs would clearly be an important factor , but so too would the anticipated requirements of the user.

Determine the user’s requirements.

The starting point of any website project is to establish precisely what the users want , but ideas for websites can originate from a variety of sources – management , customers , employees and all sorts of other people who may have an interest in a website project. Moreover , visitors to a website are not always a simple homogeneous group. The reasons for users visiting a website can differ greatly. They may require specific information from a site , want to purchase some product or just be casually browsing. This means that managers must be clear about who the users are and what they want from the site from the start.

  Prepare a work plan.

Having determined the user’s requirements , the next stage is to write a description of what your site will provide , along with the function of each part. This is a description of the functional requirements and , from it , a work plan setting out how they will be implemented can be formulated.

The work plan i a document that details the project tasks, resources and time allocated to the development of each of the tasks. Normally , a Gantt chart or some other project management chart along with project milestones and development schedules would be produced.

p/s:- A good book to read for a web developer starter or someone who wants to try develop a website for his/her company..Some of the article is an excerpt taken from the book – Effective Website Development – Tools and Techniques publish by Addison Wesley and written by Keith Darlington.

windows 8

Windows 8 – Absolute Beginners Guide.

A good book to read for users who want to install and use Windows 8 as their operating system. Borrowed from the National Library ( PNM ) recently.If another version of Windows were installed and running properly on your computer when Windows 8 was installed , whomever installed Windows 8 may have chosen to create a dual-boot setup. this setup enables you to choose the operating system to use when the computer is turned on – yes, this is possible.

With your computer running and Windows 8 Booted up , the next step is to sign in to Windows. Before starting down , there are a few new alternatives to the venerable password in Windows 8 to talk about.

You probably are accustomed to entering a password to access secured content on websites , as well as to sign in to computers, tablets , and some software programs. The passwords you use might be a randomly-generated string of numbers and letters or they might be the names of members of your family or perhaps the name of your favorite sports hero.

Windows 8 provides an alternative to the password for use when signing-in. When you create your new account in Windows 8 , you need to supply a password , but you can also specify use one of two new sign-in options , replacing the use of the password after you initially supply it. these two options are PIN and Picture Password. Besides saving you the repetitive stress of entering your password often , these two new options offer a lot of flexibility to determine how to access your user account. Plus , using them will certainly impress your friends and family.

The Microsoft engineers built Windows 8 to handle many problems , but there is always a chance that something can go wrong. Some software programs might interfere with others; hardware you add to your computer might interfere with Windows 8; and programs you download from the internet can cause issues. As a result , Windows 8 can freeze , become sluggish , or shut down unexpectedly , and sometimes you may need to force your computer to power down. If you have experience running Windows in one of the diagnostic modes , such as Safe Mode or Safe Mode with networking , you can use one of those options. If you are like most users , select Start Windows Normally and press Enter. Ideally everything should run just like normal at this point.

p/s:- Quite interesting book to read about Windows 8 – the new Microsoft Operating System. Some of the article is an excerpt taken from the book – Windows 8 – Absolute Beginner’s Guide publish from Pearson Education Inc and written by Paul Sanna.


Building Interfaces with Microsoft Foundation Classes and Javascript….

September 21, 2015

Building Interfaces with Microsoft Foundation Classes

mfc classes

I borrowed this book from National Library this month….Quite interesting book that covers ways to coding in MFC (Microsoft Foundation Classes) using Visual C++.. The book covers chapter relating to Control and the User Interface , The Buttons , Edit Boxes , Listboxes and Checklist Boxes , Status Bars and so on….The user interface is one of the most critical aspects of the software development cycle. The most common perception for the use of a control is as a data entry device. Clicking a check box , pushing a button , or entering text into an edit box are all classic examples of ascertaining the user’s intentions.

Command buttons are rectilinear shapes that use either a text label or a graphical icon to represent the action the button performs. A toolbar is a common example of the use of a graphical icon. Text labels are the most common way to describe the function of a button , especially when that function or meaning cannot be easily conveyed by an icon of some sort. Graphical buttons are ideal for dialog boxes that have a lot of screen clutter , because they tend to be smaller in size than buttons with text labels.

There are times when you need to trap certain keystrokes in a dialog box. Generally , these are the Tab and Enter keys. But because dialog boxes have their own message queues , these keystrokes cannot be intercepted in Class Wizard by overriding the WM_CHAR or WM_KEYDOWN messages. There’s another way you can restrict the user’s input into an edit box without subclassing. This involves building a format string , and trapping certain messages in Class Wizard. Sometimes , simply assigning the Number property to an edit box is not enough – you need to allow the use of the plus and minus signs , and the decimal point. A Number-type edit box rejects these characters. One solution is to write a universal method that works much like the formatted input described previously.

Listbox is a control that displays a list of item , such as a list of names or files. List-boxes can have one or more columns , and allow single or multiple selection modes. Listboxes respond to both mouse clicks and keyboard entries. When a user clicks a string , or presses the spacebar while on an item in the listbox , the string is selected. This is indicated by highlighting the string in the listbox , and placing it in the edit box portion of the control.

Beginning with MFC version 4.0 , status bars are implemented using class CStatus-BarCtrl , which encapsulates a Windows95 status bar control. For backward compatibility , MFC retains the older status bar implementation in class COldStatusBar. The class includes a wide range of styles that you can apply in addition to class methods for manipulating it in a variety of ways.

In conclusion , this books covers areas such as common controls , including buttons , boxes , bars , spinners , TreeView and sliders , and there is a Microsoft’s New Common Controls. The book show you how to implement all commonly used controls and dialog boxes , how to add multimedia and so on…A good book to read if you planning coding MFC in Visual C++…

p/s:- Some of the article above is an excerpt from the book Building Better Interfaces with Microsoft Foundation Classes written by Keith Bugg and published by John Wiley and Sons , Inc.



Borrowed this book from National Library (PNM) this month . A book that tells and taught us about how to coding in Javascript language using HTML and Javascript language…Some programming language must be compiled , or translated , into machine code before they can be executed. Javascript , on the other hand , is an interpreted language. The browser executes each line of script as it comes to it. Although many programming languages are complex , scripting languages are generally simple. Web scripting languages enable you to combine scripting with HTML to create interactive web pages.

When you create more complicated scripts , you’ll quickly find your HTML documents become large and confusing. To avoid this , you can use one or more external Javascript files. These are files with the .js extension that contain Javascript statements. A variety of dedicated HTML editors is also available and will work with Javascript. In fact , many include feature specifically for Javascript – for example , color-coding the various Javascript statements to indicate their purposes , or even creating simple scripts automatically.

So far , you’ve seen some Javascript statements that have a section in parentheses , like this:


This is an example of a function. Functions provide a simple way to handle a task , such as adding output to a web page. Javascript includes a wide variety of built-in functions , which you will learn about. A statement that uses a function , as in the preceding example , is referred to as a function call. Javascript  also supports objects. Like variables , objects can store data – but they can store two or more pieces of data at once. The item of data stored in an object are called the properties of the object. Javascript uses periods to separate object names and property names. Objects can also include methods. These are functions that work with the object’s data. Each event handler is associated with a particular browser object , and you can specify the event handler in the tag that defines the object. You specify the event handler as an attribute to the HTML tag and include the Javascript statements to handle the event within the quotation mark. This is an ideal use for functions because function names are short and to the point and can refer to a whole series of statements.

In Conclusion , this book teaches us to use Javascript to build dynamic interactive web pages , debug scripts , create scripts that work in all browsers , exploit the capabilities of Javascript , using CSS with simple Javascript , add AJAX effects to your web pages and many more…The book teaches about the fundamental of using Javascript programming…

p/s:- Some of the article is an excerpt from the book Javascript in 24 Hours , written by Michael Moncur and published by SAMS Publishing.


Autonomic Computing and TCP/IP Sockets in Java….

August 20, 2015

Autonomic Computing.

autonomic computing

I borrowed this book before Hari Raya Aidilfitri this year from National Library (PNM). After reading it , I think this book mainly covers chapter about Autonomic Computing – the concepts , infrastructure and applications and the field , theory about Autonomic Computing.

The term autonomic computing was coined in 2001 by Paul Horn , senior vice president of research for IBM. According to Horn , the industry’s focus on creating smaller , less expensive , and more powerful systems was fueling the problem of complexity. Left unchecked , he said , this complexity would ultimately prevent companies from “moving to the next era of computing” and , therefore the next era of business. In response , he issued a “Grand Challenge” to the IT industry to focus on the development of autonomic systems that could manage themselves.

Current State of Autonomic Computing.

The most visible sign to IT staffs has been the incorporation of self-managing autonomic capabilities into individual products. Today , at every level of the infrastructure , vendors are embedding autonomic capabilities within their products. Chip can now sense change and alter the configuration of circuitry to enhance processor performance or avoid potential problems. Databases can automatically tune themselves as workload fluctuates and optimize performance as data organization changes. Networking components can intelligently route traffic. Blade servers can automatically populate new blades with the required software as they’re plugged in. The list goes on.

Autonomic computing is about creating systems that are self-aware and self-managing to help reduce management complexity , increase availability , and enhance flexibility. Great strides have already been made in this emerging field. Further chapters in this book provide in-depth discussion on autonomic computing architecture , implementation models , design, and application in both academia and industry to demonstrate what exists today and what will be possible in the future.

Although autonomic computing was proposed as a way of handling the growing complexity of some large computing systems , its associated properties are desirable in software of any size. Indeed , most software typically contains some aspects of selft-management , and that use is growing through inclusion of features such as automated updates over the internet.

A large autonomic computing system cannot be composed from autonomic components. The configuration of the components would not self-adapt , the composition could oscillate , and individual components might become bottlenecks. In order to have system-wide autonomy , a system-wide feedback loop is necessary.

p/s: – Some of the article above is an excerpt from the book Autonomic Computing – Concepts , Infrastructure and Applications edited by Manish Parashar and Salim Hariri – CRC Press.

TCP/IP Sockets in Java.

tcpip sockets in java

This book also I borrowed from National Library (PNM) before Hari Raya Aidilfitri this year…The books covers the TCP/IP programming sockets in Java language.How we can implement sockets in java language , the coding and so on….

A socket is an abstraction through which an application may send and receive data , in much the same way as an open file handle allows an application to read and write data to stable storage. A socket allows an application to plug in to the network and communicate with other applications that are plugged in to the same network. Information written to the socket by an application on one machine can be read by an application on different machine and vice versa.

TCP Sockets.

Java provides two classes for TCP:Socket and ServerSocket. An instance of socket represents one end of a TCP connection. A TCP connection is an abstract two-way channel whose end are each identified by an IP address and port number. Before being used for communication , a TCP connection must go through a setup phase , which starts with the client’s TCP sending a connection request to the server’s TCP. An instance of ServerSocket listen for TCP connection requests and creates a new Socket instance to handle each incoming connection. Thus , servers handle both ServerSocket and Socket instances , while clients use only Socket.

UDP Sockets.

UDP provides an end-to-end service different from that TCP. In fact , UDP performs only two functions: 1)it adds another layer of addressing (ports) to that IP , and 2) it detects some forms of data corruption that may occur in transit and discards any corrupted messages. Because of this simplicity , UDP sockets have some different characteristics from the TCP sockets we saw earlier.

Another difference between UDP sockets and TCP sockets is the way that they deal with message boundaries: UDP socket preserve them. This makes receiving an application message simpler , in some ways , than it is with TCP sockets.

p/s:- Some of the article is an excerpt from the book TCP/IP Sockets in Java – Practical guide for programmers , written by Kenneth L. Calvert and Michael J.Donahoo publish by Morgan Kaufmann.


Computer Organization & Architecture – Designing for Performance….

May 31, 2015

computer organization - designing for performance

For my first introduction , just borrowed a book from National Library (PNM) entitled Computer Organization & Architecture – Designing for Performance written by William Stallings. This book mainly tell us about the computer architecture , the CPU , memory , processor , I/O devices , the control unit  and parallel organization. It tells us about how computers are organized  and made of , the definitions of a computer system , the Pentium Family Processor and PowerPC and so on…The memory of the computer system – the cache memory , DDR SDRAM memory are also discussed in this book.

RAM technology is divided into two technologies: dynamic and static. A dynamic RAM (DRAM) is made with cells that store data as charge on capacitors. The presence or absence of charge in a capacitor is interpreted as a binary 1 or 0. Because capacitors have a naturaltendency to discharge , dynamic RAMs require periodic charge refreshing to maintain data storage. The term dynamic refers to this tendency of the stored charge to leak away , even with power continuously applied.

When only a small number of ROMs with a particular memory content is needed , a less expensive  alternative is the programmable ROM (PROM). Like the ROM , the PROM is nonvolatile and may be written into only once. For the PROM , the writing process is performed electrically and may be performed by a supplier or customer at a time later than the original chip fabrication. Special equipment is required for the writing or “programming” process. PROMs provide flexibility and convenience. The ROM remains attractive for high-volume production runs.

In a typical DRAM , the processor presents addresses and control levels to the memory , indicating that a set of data at a particular location in memory should be either read from or written into the DRAM. After a delay , the access time , the DRAM either writes or reads the data. During the access-time delay , the DRAM performs various internal functions , such as activating the high capacitance of the row and column lines , sensing the data , and routing the data out through the output buffers. The processor must simply wait through this delay , slowing performance.

With the synchronous access , the DRAM moves data in and out under control of the system clock. The processor or other master issues the instruction and address information , which is latched by the DRAM. The DRAM then responds after a set of number of clock cycles. Meanwhile , the master can safely do other tasks while the SDRAM is processing the request.

InfiniBand is a recent I/O specification aimed at the high-end server market. The first version of the specification was released in early 2001 and has attracted numerous vendors. The standard describes an architecture and specifications for data flow between processors and intelligent I/O devices. InfiniBand is intended to replace the PCI bus in servers , to provide greater capacity , increased expandability , and enhanced flexibility in server design. In essence , InfiniBand enables servers , remote storage, and other network devices to be attached in a central fabric or switches and links. The switch-based architecture can connect up to 64,000 servers , storage systems , and networking devices.

The Pentium Processor – Register Organization – The register organization includes the following type of registers:

1. General: There are eight 32 bit general purpose registers. These may be used for all types of Pentium instructions; they can also hold operands for address calculations. In addition , some of these registers also serve special purposes. For example , string instructions use the contents of the ECX , ESI , and EDI registers operands without having to reference these registers explicitly in the instruction. As a result , a number of instructions can be encoded more compactly.

2. Segment: The 16-bit segment registers contain segment selectors , which index into segment tables. The code segment (CS) register references the segment containing the instruction being executed, The stack segment (SS) register references the segment containing a user-visible stack. The remaining segment registers (DS,ES,FS,GS) enable the user to reference up to four separate data segments at a time.

* The rest you can find at page 442 Chapter 12 (Processor Structure and Function).

In conclusion , this book is a great book to read if you want to know about the computer architecture and organization , starting from the 80386 to Pentium 4  processor. For parallel organization or parallel processing , you can check it out at page 637 and 638 of the book. Stallings provides a clear, comprehensive presentation of the organization and architecture of modern-day computers, emphasizing both fundamental principles and the critical role of performance in driving computer design. The text conveys concepts through a wealth of concrete examples highlighting modern CISC and RISC systems.

p/s:- Some of the excerpt are taken from this book – Computer Organization & Architecture – Designing for Performance – 7th Edition –  written by William Stallings , published by Pearson Prentice Hall.


Windows Group Policy…..

April 28, 2015

windows group policy

Just got a book from National Library entitled Windows Group Policy written by William R. Stanek. For my first introduction , Group Policy is a set of rules that you can apply throughout the enterprise. Although you can use Group Policy to manage servers and workstations running Windows 2000 or later , Group Policy has changed since it was first  implemented with Windows 2000. Group Policy settings enable you to control the configuration of the operating system and it’s components. You can also use policy settings to configure computer and user scripts , folder redirection , computer security , software installation , and more.

Now , I’m writing some description and notes about Chapter 2 – Deploying Group Policy of the book. Unlike Windows 2000, Windows XP Professional, and Windows Server 2003, Windows Vista and Windows Server 2008 use the Group Policy Client service to isolate Group Policy notification and processing from the Windows logon process. Separating Group Policy from the Windows logon process reduces the resources used for background processing of policy while increasing overall performance and allowing delivery and application of new Group Policy files as part of the update process without requiring a restart.

Each new version of the Windows operating system introduces policy changes. Sometimes these changes have made older policies obsolete on newer versions of Windows. In this case the policy works only on specific versions of the Windows
operating system, such as only on Windows XP Professional and Windows Server 2003. Generally speaking, however, most policies are forward compatible. This means that policies introduced in Windows 2000 can, in most cases, be used on
Windows 2000, Windows XP Professional, Windows Server 2003, Windows Vista, and Windows Server 2008. It also means that Windows XP Professional policies usually aren’t applicable to Windows 2000 and that policies introduced in Windows
Vista aren’t applicable to Windows 2000 or Windows XP Professional.

On a computer running Windows Vista, Windows Server 2008, or later versions, you’ll automatically see the new features and policies as well as standard features and policies when you use GPMC 2.0 or later to work with Group Policy. However, the new features and policies aren’t automatically added to Group Policy objects (GPOs). Don’t worry—there’s an easy way to fix this, and afterward you’ll be able to work with new features and policies as appropriate throughout your domain.

With the original file format used with policies, called ADM, policy definition files are stored in the GPO to which they relate. As a result, each GPO stores copies of all applicable policy definition files and can grow to be multiple megabytes in size. In contrast, with the ADMX format, policy definition files are not stored with the GPOs with which they are associated by default. Instead, the policy definition files can be stored centrally on a domain controller and only the applicable settings are stored within each GPO. As a result, GPOs that use ADMX are substantially smaller than their counterparts that use ADM. For example, while a GPO that uses ADM may be 4 megabytes (MB) in size, a GPO that uses ADMX may be only 4 kilobytes (KB) in size.

The way domain controllers replicate the SYSVOL depends on the domain functional level. When a domain is running at Windows 2000 native or Windows Server 2003 functional level, domain controllers replicate the SYSVOL using File Replication Service (FRS). When a domain is running at Windows Server 2008 functional level, domain controllers replicate the SYSVOL using Distributed File System (DFS).

The storage techniques and replication architectures for DFS and FRS are decidedly different. File Replication Service (Ntfrs.exe) stores FRS topology and schedule information in Active Directory and periodically polls Active Directory to retrieve updated information using Lightweight Directory Access Protocol (LDAP). Internally, FRS makes direct calls to the file system using standard input and output. When communicating with remote servers, FRS uses the remote procedure call (RPC) protocol.

Active Directory supports three levels of Group Policy objects:
1. Site GPOs Group Policy objects applied at the site level to a particular Active Directory site.
2.  Domain GPOs Group Policy objects applied at the domain level to a particular Active Directory domain.
3. Organizational Unit (OU) GPOs Group Policy objects applied at the OU level to a particular Active Directory OU.

Through inheritance, a GPO applied to a parent container is inherited by a child container. This means that a policy preference or setting applied to a parent object is passed down to a child object. For example, if you apply a policy setting in a domain, the setting is inherited by organizational units within the domain. In this case, the GPO for the domain is the parent object and the GPOs for the organizational units are the child objects. In an Active Directory environment, the basic order of inheritance goes from the site level to the domain level to the organizational unit level. This means that the
Group Policy preferences and settings for a site are passed down to the domains within that site, and the preferences and settings for a domain are passed down to the organizational units within that domain.

To end this chapter , I encouraged you all to read the rest of the description about Group Policy in this chapter 2 , and also the rest of the chapter about Group Policy in this book. It’s quite interesting to read about….

p/s:- This is an excerpt taken from the book – Windows Group Policy – Administrator’s Pocket Consultant written by William R. Stanek and published by Microsoft Press.


GWT In Practice……

March 30, 2015

GWT In Practice







Recently , just borrowed a book from National Library entitled GWT In Practice written by Robert T. Cooper and Charlie E. Collins . GWT stands for Google Web Toolkit.  GWT is a Java to JavaScript  cross-compiler . That is , it takes Java code and compiles it into JavaScript to be run in a browser.Other aspects that set GWT apart include a harness for debugging Java bytecode directly as it executes in a simulated browser environment, a set of core UI and layout widgets with which to build applications, a Remote Procedure Call (RPC) system for handling communications with a host web server, internationalization support, and testing mechanisms. Another of the reasons GWT is significant and is different from some other RIA offerings is that it provides tooling and testing support. GWT includes a powerful debugging shell that allows you to test and debug your code as it interacts with the native browser on your platform.

The testing support GWT provides is based on JUnit and on a few extensions the toolkit provides. Your GWT code can be tested as Java, from the shell. After you compile your code into JavaScript, the same test can be used again in that form by using further scaffolding provided by GWT. This allows you to test on various browser versions and, if desired, even on different platform and browser combinations.

The GWT Java compiler takes Java code and compiles it into JavaScript—that’s all. It has some advanced rules for doing this, however. By defining GWT compile tasks into modules, the compiler can perform more analysis on the code as it’s processed, and branch into multiple compilation artifacts for different output targets. This means that when compiling a class, you can specify differing implementations based on known parameters. The obvious switch point is the user agent or client browser you’re targeting. This feature drives the core of GWT’s cross-browser compatibility.

Built on top of GWT’s intelligent compilation system is a cross-browser UI layer. The real magic here comes from implementing the UI elements in Java and then using a browser-specific implementation of the core DOM to build out the native browser elements as they’re needed by the higher-level Java layer. Whereas some Ajax libraries have a lot of focus on UI widgets, GWT is intended to provide a core of UI functionality that users and the community can build upon.
The GWT UI layer provides a wide variety of layout-related panels, data representation constructs such as Tree and Grid, a set of user input elements, and more. The 1.4 release of GWT began to expand the UI toolkit to include some new advanced elements, like a rich text editor and a suggest box. This release also started to include some great new optimized UI elements that draw from the power of the plugin-capable compiler, such as the ImageBundle.

The GWT shell allows you to test your application in a browser while executing the native Java bytecode. This gives you the ability to use all your favorite Java tools to inspect your application, including profilers, step-through debugging, and JTI-based monitors. This hosted mode browser, with an embedded Apache Tomcat server, is also what makes it possible to test your compiled JavaScript with JUnit.

First, GWT projects are defined in terms of modules, composed of resources, configuration, and source. The module configuration defines compile-time information about a project and specifies resources needed at runtime. Beyond configuration, modules also make possible a rich inheritance mechanism. Because of this capability, projects can be complete web applications, they can be of a pure library nature, or they can fall anywhere in between. One thing a module defines is the starting point for a project’s code, known as an entry point. Entry point classes are coded in Java and are referenced by a module definition and compiled to JavaScript. Modules themselves, and the entry points they define, are invoked through a <script> reference on an HTML page, known as a host page. Host pages invoke GWT projects and also support a few special <meta> tags that can be used to tweak things. At a high level, these are the three main components of a GWT project: a module configuration file, an entry point class, and an HTML host page.

Lastly , GWT is great in making project websites that uses Javascript. GWT borrows from the approaches that have come before it and takes things in a new direction, expanding the web development frontiers. All the while, GWT maintains the advantages of traditional compiled-language development by starting out from Java; and it adopts the successful component-oriented development approach, applying these concepts to the web tier in a responsive Ajax fashion.

In addition to starting with Java, GWT also embraces the parts of the web that have  worked well and allows developers and users to remain on familiar ground. This is an overlooked yet significant aspect of GWT. GWT doesn’t try to hide the web from you, just to achieve the moniker “rich web application.” Instead, GWT happily integrates with and uses HTML, JavaScript, and CSS.

p/s:- Some of the article is an excerpt taken from the book GWT In Practice written by Robert T. Cooper and Charlie E. Collins , published by Manning. Hope you guys enjoy reading it….








ScreenOS Cookbook…..

March 11, 2015

screenOS cookbook






ScreenOS is one of the operating system that has been used in Juniper Network switch and routers operating system. If you buy a switch or a Juniper’s router , you would like to check ScreenOS installed in it. ScreenOS is used to administer the traffic flow of network design  that uses OSPF , BGP , VPN , NAT , DHCP and so on…Recently , I just borrowed a ScreenOS Cookbook from the National Library (PNM) . It’s quite a good book to read if you’re planning to be a Network Administrator that uses Juniper’s switches and routers product line. Administering ScreenOS is quite easy and challenging , just like you administer the CISCO IOS Software in CISCO’s product line that consist of switch and router. We can use ScreenOS to administer firewall configuration , wireless , route mode and static routing , transparent mode and so on….

DHCP Server Maintenance.

You can use ScreenOS’s get commands to view a feature’s functionality. In the get interface wireless2 dhcp server command , the DHCP server is enabled and on , and is not using the next server option which allows configuration information to be shared among multiple DHCP servers. Also , the DHCP client will update information to the server component.

The get interface <interface name> dhcp server ip allocate command shows the allocated IPs per interface , as well as the Media Access Control (MAC) address and time remaining in the lease. As each interface can have its own DHCP settings , different ranges may be configured on the device. To reset the DHCP leases , use the clear dhcp server <interface name> ip command. You can use this command to clear all leases or just a particular IP address:


FIREWALL-A->clear dhcp erver wireless ip all

FIREWALL-A->get db str


Use get commands:

FIREWALL-A->get interface wireless2 dhcp server

FIREWALL-A->get interface wireless1 dhcp server option.

When the clear dhcp server <interface name> ip all command is issued , the flash:dhcpserv1.txt file is modified. This file is used to store DHCP lease information so that leases can survice a system reboot. When the file is modified, each interface that is not cleared has the lease information for that interface rewritten so as to preserve the information.

The get interface <interface name> dhcp server option command shows all options configured on the DHCP server for that interface , including custom options. When custom options are configured , each option appears in the command output with the name Custom , and the code in parentheses immediately following.

Configure DHCP Relay

FIREWALL-A->set interface ethernet2 dhcp relay service

FIREWALL-A->set interface ethernet2 dhcp relay server-name

FIREWALL-A->set address untrust DHCP_SVR_10.3.1.1

FIREWALL-A->set policy from untrust to trust DHCP_SVR_10.3.1.1 any dhcp-relay permit log

Juniper Network’s firewall system products , which include the NS5000 Series and the ISG Series , do not have DHCP server functionality built-in. As these devices are typically used to protect large-scale environtments , they are frequently sandwiched in between pairs of routers. Furthermore , DHCP servers are often already available and installed elsewhere  in the network. Occasionally , however , hosts requiring DHCP services are directly connected to the firewall.

To accommodate DHCP services for hosts that connect to the firewall as their gateway , you can set up DHCP relay. To configure DHCP relay , simply enable the DHCP relay service on the interface , and configure the server address to forward the DHCP messages.

If you want to send these messages across a tunnel , use the set interface <interface name> dhcp relay vpn command. Additionally , a policy which permits dhcp-relay from the server to the client side-in this case , from untrust to trust-is required.

You can verify that DHCP relay is enabled on the interface by using the get interface command:

FIREWALL-A->get int eth2

For more concise output , use the get interface <interface name> dhcp relay command:

FIREWALL-A->get int eth2 dhcp relay


p/s:- ScreenOS uses CLI like in CISCO IOS Software…We can manage the network connection and network design using ScreenOS. We can also uses multicast traffic through a transparent mode device and create a virtual systems.(Later in the last chapter).. Some of this article are excerpt taken from ScreenOS Cookbook by Stefan Brunner , Vik Davar , David Delcourt , Ken Draper , Joe Kelly & Sunil Wadhwa from O’reilly.




Get every new post delivered to your Inbox.