Help with a simple configuration to connect a pc and router

Since I want to access to my openwrt router at my network's home I discovered I am forced to use OpenVPN. In fact the ISP which provides the internet connection doesn't allow his customers to be visible from the exterior (it is an Italian ISP named Fastweb).
The pc with what I want to access my router from the exterior is connected to the internet with a public IP and I can open the doors I want. For this reason I want to install the openvpn server on that pc.
What I would like to achieve is to see all the devices connected on the openwrt router (and the router itself) from the PC with the public IP.
For example, access the router web interface by simply writing 192.168.1.1 on the pc with openvpn server of which the local address is 10.0.0.2.
At the same time I would avoid to install the openvpn client on each device connected to the openwrt router. Is this possible? So reach the 192.168.1.3 pc from my openvpn server pc with 10.0.0.2 as local address, without installing openvpn client on the 192.168.1.3 pc.
Is this kind of operation called "bridging"? I am pretty new with openvpn, so I came here to gently ask if you can suggest me some configurations for the openvpn server and client.
What would happen if I restart the pc with the openvpn server? I mean does the router with openvpn client automatically reconnect as soon the openvpn server is again on?
I think an image is better descriptive of what I want to build:
Really thanks in advance.
Last edited by Garret (2011-12-14 00:53:28)

EDIT: AFAIK, the concept of "Server" and "Client" in OpenVPN only refers to which machine initiates the connection. It doesn't affect the resulting connection. That is entirely dependent on the configuration.
Garret wrote:At the same time I would avoid to install the openvpn client on each device connected to the openwrt router. Is this possible? So reach the 192.168.1.3 pc from my openvpn server pc with 10.0.0.2 as local address, without installing openvpn client on the 192.168.1.3 pc.
You only need the Client on one machine.
Garret wrote:Is this kind of operation called "bridging"? I am pretty new with openvpn, so I came here to gently ask if you can suggest me some configurations for the openvpn server and client.
If you setup a bridged VPN, the "OpenVPN Server" machine will get a second address within the 192.168.1.x network (for example, 192.168.1.20). It will use this address (via the VPN) to connect to the other hosts inside your network.
If you setup a routed VPN, then both address ranges (192.168.1.x and 10.0.0.x) will "become visible" at both ends.
If you only want the "OpenVPN Server" to be able to access your "home", then I would recommend a Bridged VPN.
Garret wrote:What would happen if I restart the pc with the openvpn server? I mean does the router with openvpn client automatically reconnect as soon the openvpn server is again on?
Yes.
Last edited by fukawi2 (2011-12-13 22:38:58)

Similar Messages

  • Looking for help with respect to configuring MS Exchange server to handle attachments over 10 MB for forwarding to Salesforce (Email-to-case).

    Looking for help with respect to configuring MS Exchange server to handle attachments over 10 MB for forwarding to Salesforce (Email-to-case).
    Problem - SFDC does not create cases from emails that have more than 10 MB of attachments. Our clients will not go-live if their clients cannot send in emails with attachments over 10 MBs
    Potential resolution - Configure MS exchange to strip off the attachments(if over 10 MB) and store it in a public folder, forward the email to Salesforce (so the case gets created or the email
    is associated to an existing case), the client should have some way to know if the attachments were stripped off and should be able to dlownload the attachments and continue with case resolution.
    Any help is appreicated!
    Thanks

    Hi,
    From your description, you want to achieve the following goal:
    Configure Exchange to filter the attachments if the size is over 10 MB and store it in a public folder, and then forward the email to Salesforce.
    Based on my knowledge, I'm afraid that it can't be achieved. Exchange can filter messages with attachments, but it couldn't store these attachments on public folder automatically. Also, I don't see any transport rule can do it.
    Hope my clarification is helpful.
    Best regards,
    Amy Wang
    TechNet Community Support

  • HT5304 Hi Guys, I'm running snow leopard 10.6.3  recently had update which left me with a DMSL launch problem. Rei installed software and now can't connect to Internet  with cable or wifi ! can see network and router,. Help

    Hi Guys, I'm running snow leopard 10.6.3  recently had update which left me with a DMSL launch problem. Re installed software and now can't connect to Internet  with cable or wifi ! can see network and router. Have tried many things and now pulling my hair out !  

    recently had update
    Care to share which update?
    Have tried many things
    Care to share?
    Please detail ALL you have done so far in the way of troubleshooting?   Need this info to avoid the been there done that scenarios.

  • Unable to connect after modem and router restart

    Hi Everybody
    Some times i don't get any internet connection from my cable modem (Motorola 5100 surfboard). In such cases, Time Warner cable recommends restarting the modem. I am connected to the internet in the following sequence:
    Cable Modem --> Router --> PC
    The way it should work:
    Switch off the router
    Switch off the cable modem
    Restart the cable modem (all the lights should be on)
    Restart the router
    Connected to the Internet!
    However, things don't work this way. If I connect the PC to the cable modem directly after the modem restart, I am able to get online
    If I try to connect with the router in the middle, I get no connection. Usually, I have to follow this sequence (instead of the one above):
    Switch off the cable modem
    Re-set the Linksys router (loose all my settings)
    Switch off the router
    Restart the cable modem (all the lights should be on)
    Restart the router
    Connected to the Internet!
    Re-configure the router manually to get back my previous settings
    Need your help to figure out why a simple re-start of the modem and router (in that sequence) doesn't work and I have to re-set the router to get on-line
    One more thing - I backed up my router configuration (Administration --> Config Management --> Backup) and after getting online, restored it. Thought It would work, but no luck. Couldn't connect via the router. Had to follow the above sequence (again) to get online and then manually had to re-configure all router settings
    Rourter - WRT54G. Version 2
    Firmware version - v4.21.1
    Any help is greatly appreciated. Thanks

    Step should be :
    1) Shutdown the computer.
    2) Unplug the Broadband modem’s power cable and wait for 30 seconds.
    3) Unplug the router’s power cable and wait for 30 seconds.
    4) Plug in the Broadband modem’s power cable and wait for its lights to appear stable.
    5) Plug in the router's power cable once the modem’s lights appear stable.
    6) Power on the computer on and test the Internet connection.

  • Help with a simple 1811 configuration

    I have a very basic level of understanding with Cisco products and I need help with what should be simple and even doable by me.
    I have a Cisco 1811 integrated router and am simply trying to use it on my home network.  I can configure the router with an enable secret password, password encryption, VTY, aux, and cons logins with no issues.  The router has 2 Ethernet interfaces, 0 and 1 and 8 switch ports.
    The idea is to bring Comcast ISP service into one of the Ethernet ports and then have three machines on the switch ports able to access the Internet.  Also I have an off-the shelf wireless router that I thought I would just plug that into an available switch port and allow a wireless AP as well. 
    This is so simply, that I can't believe I can't figure it out, but I can't.
    I set int F1 to DHCP, performed a 'no shut', and connected the ISP's router and have an up and up indication.  I have setup a static network with my three machines on the switch ports and enabled all applicable ports and have up and up indications - however, no traffic flow, even amongst my static Layer 2 switched LAN - not even a 'ping'.  By my understanding of Layer 2, this should work right now, whether the ISP service is working or not - WHAT AM I DOING WRONG?
    The addressing scheme I have ended up on is 172.16.1.0/28
    Obviously without the first hurdle cleared, of why the switched LAN doesn’t work, I haven't got any deeper.  Do I need to configure NAT?  I don't think I would need to in the scenario right?
    All of my experience, and none at the CCNA level, has been with larger Cisco equipment.  One thing I noticed on the 1811 was that when trying to create a new VLAN, it appears to work yet does not do anything and the 'sh vlans' output returns nothing, not even the VLAN1 I can see with 'sh ip int brief". 
    Anyway, if anyone has time to help a newbie out I would appreciate it; I’m lost.
    Thanks,
    Josh

    Thanks for the help Andrew!  You know, I think if this was two separate devices (switch and router) I think I would be up and running, but this integrated stuff is throwing me off, not to mention that the IOS is a much older version (I guess) than what I'm used to. 
    They were throwing this 1811 in the trash can at work, so I just emptied the trash can.  I have no documentation at all but I have since found the 1800 series documentation on Cisco.com and have tried to implement the basic configurations cited; with what seems like success, but still no joy.  I did have to recover the password and did so with 0x2142, I bypassed the setup and compared the default configuration with what is listed in the documentation and they DO NOT match; I also tried to go through setup mode with the same indications.  Additionally I've also learned that the 1800 series is pre-configured on certain options (DHCP, VLAN), which is new to me - I thought Cisco routers were not configured by default - isn't that kind of the point?  (By the way, the below port status may not be correct since I now have all the ports unplugged)
    Anyway, here is the 'show run' command, the 'sh ip int brief' command, followed by the 'sh version' command:
    Show Run
    Casino#sh run                                                                 
    Building configuration...                                                     
    Current configuration : 2006 bytes                                            
    version 12.4                                                                  
    service timestamps debug datetime msec                                        
    service timestamps log datetime msec                                          
    service password-encryption                                                   
    hostname Casino                                                               
    boot-start-marker                                                             
    boot-end-marker                                                               
    enable secret 5 $1$meWw$nsMTp6US7axi/uE0MWULK.                                
    enable password 7 06535E741C1B584C55                                          
    no aaa new-model                                                              
    ip cef                                                                        
    no ip dhcp use vrf connected                                                  
    ip dhcp excluded-address 172.16.1.1                                           
    ip dhcp pool Casino                                                           
       import all                                                                 
       network 172.16.1.0 255.255.255.240                                         
       default-router 67.165.208.1                                                
       dns-server 68.87.89.150                                                    
       domain-name hsd1.co.comcast.net                                            
    no ip domain lookup                                                           
    ip domain name GinRummy.localhost                                             
    ip name-server 68.87.85.102                                                   
    ip name-server 68.87.69.150                                                   
    ip auth-proxy max-nodata-conns 3                                              
    ip admission max-nodata-conns 3                                               
    multilink bundle-name authenticated                                           
    archive                                                                       
    log config                                                                   
      hidekeys                                                                    
    interface Loopback0                                                           
    ip address 172.16.1.1 255.255.255.240                                        
    interface FastEthernet0                                                       
    no ip address                                                                
    shutdown                                                                     
    duplex auto                                                                  
    speed auto                                                                   
    interface FastEthernet1                                                       
    ip address dhcp                                                              
    ip nat outside                                                               
    ip virtual-reassembly                                                        
    duplex auto                                                                  
    speed auto                                                                   
    pppoe enable                                                                 
    pppoe-client dial-pool-number 1                                              
    interface BRI0                                                                
    no ip address                                                                
    encapsulation hdlc                                                           
    shutdown                                                                     
    interface FastEthernet2                                                       
    interface FastEthernet3                                                       
    interface FastEthernet4                                                       
    interface FastEthernet5                                                       
    interface FastEthernet6                                                       
    interface FastEthernet7                                                       
    interface FastEthernet8                                                       
    interface FastEthernet9                                                       
    interface Vlan1                                                               
    no ip address                                                                
    ip nat inside                                                                
    ip virtual-reassembly                                                        
    interface Dialer0                                                             
    ip address negotiated                                                        
    ip mtu 1492                                                                  
    encapsulation ppp                                                            
    dialer pool 1                                                                
    ppp authentication chap                                                      
    ip forward-protocol nd                                                        
    no ip http server                                                             
    no ip http secure-server                                                      
    ip nat pool Casino 172.16.1.2 172.16.1.14 netmask 255.255.255.240             
    ip nat inside source list 1 interface Dialer0 overload                        
    access-list 1 permit 172.16.1.0 0.0.0.15                                      
    dialer-list 1 protocol ip permit                                              
    control-plane                                                                 
    line con 0                                                                    
    password 7 080E5916584B4442435E5C                                            
    login                                                                        
    line aux 0                                                                    
    password 7 013C135C0A59475A70191E                                            
    login                                                                        
    line vty 0 4                                                                  
    password 7 09635B51485756475A5954                                            
    login                                                                        
    end                                                                           
    Show IP Interface Brief
    Casino#sh ip int brief                                                        
    Interface                  IP-Address      OK? Method Status                Prl
    FastEthernet0              unassigned      YES NVRAM  administratively down do
    FastEthernet1              unassigned      YES DHCP   up                    do
    BRI0                       unassigned      YES NVRAM  administratively down do
    BRI0:1                     unassigned      YES unset  administratively down do
    BRI0:2                     unassigned      YES unset  administratively down do
    FastEthernet2              unassigned      YES unset  up                    do
    FastEthernet3              unassigned      YES unset  up                    do
    FastEthernet4              unassigned      YES unset  up                    do
    FastEthernet5              unassigned      YES unset  up                    do
    FastEthernet6              unassigned      YES unset  up                    do
    FastEthernet7              unassigned      YES unset  up                    do
    FastEthernet8              unassigned      YES unset  up                    do
    FastEthernet9              unassigned      YES unset  up                    up
    Vlan1                      unassigned      YES NVRAM  up                    up
    Loopback0                  172.16.1.1      YES manual up                    up
    Dialer0                    unassigned      YES manual up                    up
    NVI0  
    'show version'
    Casino#sh ver                                                                 
    Cisco IOS Software, C181X Software (C181X-ADVIPSERVICESK9-M), Version 12.4(15))
    Technical Support: http://www.cisco.com/techsupport                           
    Copyright (c) 1986-2008 by Cisco Systems, Inc.                                
    Compiled Thu 24-Jan-08 13:05 by prod_rel_team                                 
    ROM: System Bootstrap, Version 12.3(8r)YH12, RELEASE SOFTWARE (fc1)           
    Casino uptime is 52 minutes                                                   
    System returned to ROM by reload at 17:09:25 UTC Fri Jul 1 2011               
    System image file is "flash:c181x-advipservicesk9-mz.124-15.T3.bin"           
    This product contains cryptographic features and is subject to United         
    States and local country laws governing import, export, transfer and          
    use. Delivery of Cisco cryptographic products does not imply                  
    third-party authority to import, export, distribute or use encryption.        
    Importers, exporters, distributors and users are responsible for              
    compliance with U.S. and local country laws. By using this product you        
    agree to comply with applicable laws and regulations. If you are unable       
    to comply with U.S. and local laws, return this product immediately.          
    A summary of U.S. laws governing Cisco cryptographic products may be found at:
    http://www.cisco.com/wwl/export/crypto/tool/stqrg.html                        
    If you require further assistance please contact us by sending email to       
    [email protected].                                                             
    Cisco 1812 (MPC8500) processor (revision 0x400) with 118784K/12288K bytes of m.
    Processor board ID FHK120622J3, with hardware revision 0000                   
    10 FastEthernet interfaces                                                    
    1 ISDN Basic Rate interface                                                   
    31488K bytes of ATA CompactFlash (Read/Write)                                 
    Configuration register is 0x2102  
    Thanks again for your help,
    Josh

  • Need help with a simple process with FTP Adapter and File Adapter

    I am trying out a simple BPEL process that gets a file in opaque mode from a FTP server using a FTP adapter and writes it to the local file system using a File Adapter. However, the file written is always empty (zero bytes). I then tried out the FTPDebatching sample using the same FTP server JNDI name and this work fine surprisingly. I also verified by looking at the FTP server logs that my process actually does hit the FTP server and seems to list the files based on the filtering condition - but it does not issue any GET or RETR commands to actually get the files. I am suspecting that the problem could be in the Receive, Assign or Invoke activities, but I am not able identify what it is.
    I can provide additional info such as the contents of my bpel and wsdl files if needed.
    Would appreciate if someone can help me with this at the earliest.
    Thanks
    Jay

    persiandude wrote:
    Topic: Need help with if, else, and which statements and loops.
    How would I display 60 < temp. <= 85 in java
    System.out.println("60 < temp. <= 85 in java");
    another question is how do I ask a question like want to try again (y/n) after a output and asking that everytime I type in yes after a output and terminate when saying No.Sun's [basic Java tutorial|http://java.sun.com/docs/books/tutorial/]
    Sun's [New To Java Center|http://java.sun.com/learning/new2java/index.html].Includes an overview of what Java is, instructions for setting up Java, an intro to programming (that includes links to the above tutorial or to parts of it), quizzes, a list of resources, and info on certification and courses.
    [http://javaalmanac.com|http://javaalmanac.com]. A couple dozen code examples that supplement [The Java Developers Almanac|http://www.amazon.com/exec/obidos/tg/detail/-/0201752808?v=glance].
    jGuru. A general Java resource site. Includes FAQs, forums, courses, more.
    JavaRanch. To quote the tagline on their homepage: "a friendly place for Java greenhorns." FAQs, forums (moderated, I believe), sample code, all kinds of goodies for newbies. From what I've heard, they live up to the "friendly" claim.
    Bruce Eckel's [Thinking in Java|http://mindview.net/Books/DownloadSites] (Available online.)
    Joshua Bloch's [Effective Java|http://www.amazon.com/Effective-Java-2nd-Joshua-Bloch/dp/0321356683/ref=pd_bbs_1?ie=UTF8&s=books&qid=1214349768&sr=8-1]
    Bert Bates and Kathy Sierra's [Head First Java|http://www.amazon.com/exec/obidos/tg/detail/-/0596004656?v=glance].
    James Gosling's [The Java Programming Language|http://www.bookpool.com/sm/0321349806].

  • Need help with a simple basketball game.

    Hi im new here and I need help with making this simple basketball game.
    Im trying to recreate this game from this video. Im not sure if he is using as2 or as3
    Or if anyone could help me make a game like this or direct me to a link on how to do it It would be greatly appreciated.

    If you couldn't tell whether it is AS2 or AS3, it is doubtful you can turn it from AS2 into AS3, at least not until you learn both languages.  There is no tool made that does it for you.

  • Help with 10.4.5 VPN connection using PPTP to Windows 2003 Server

    Hi,
    I've looked on the discussions for an answer to this but have had no luck so far, can anyone help?
    I'm trying to connect my 10.4.5 PB to my Wn2k3 server (with RRAS) using PPTP VPN, however I keep getting stuck at the Negotiating phase of the connection and finally get this error in OSX Internet Connect:
    Could not negotiate a connection with the remote PPP server. Please verify your settings and try again.
    I can connect from my Win XP laptop so no issues with the router etc, do I need to make any changes to the server config?
    Thanks,
    Sahajesh.
    12" PB (G4)   Mac OS X (10.4.5)  

    Resolved elsewhere.

  • Need help with a simple program (should be simple anyway)

    I'm (starting to begin) writing a nice simple program that should be easy however I'm stuck on how to make the "New" button in the file menu clear all the fields. Any help? I'll attach the code below.
    ====================================================
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    public class Message extends JFrame implements ActionListener {
         public void actionPerformed(ActionEvent evt) {
         text1.setText(" ");
         text2.setText("RE: ");
         text3.setText(" ");
         public Message() {
         super("Write a Message - by Kieran Hannigan");
         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
         setSize(370,270);
         FlowLayout flo = new FlowLayout(FlowLayout.RIGHT);
         setLayout(flo);
         //Make the bar
         JMenuBar bar = new JMenuBar();
         //Make "File" on Menu
         JMenu File = new JMenu("File");
         JMenuItem f1 = new JMenuItem("New");f1.addActionListener(this);
         JMenuItem f2 = new JMenuItem("Open");
         JMenuItem f3 = new JMenuItem("Save");
         JMenuItem f4 = new JMenuItem("Save As");
         JMenuItem f5 = new JMenuItem("Exit");
         File.add(f1);
         File.add(f2);
         File.add(f3);
         File.add(f4);
         File.add(f5);
         bar.add(File);
         //Make "Edit" on menu
         JMenu Edit = new JMenu("Edit");
         JMenuItem e1 = new JMenuItem("Cut");
         JMenuItem e2 = new JMenuItem("Paste");
         JMenuItem e3 = new JMenuItem("Copy");
         JMenuItem e4 = new JMenuItem("Repeat");
         JMenuItem e5 = new JMenuItem("Undo");
         Edit.add(e5);
         Edit.add(e4);
         Edit.add(e1);
         Edit.add(e3);
         Edit.add(e2);
         bar.add(Edit);
         //Make "View" on menu
         JMenu View = new JMenu("View");
         JMenuItem v1 = new JMenuItem("Bold");
         JMenuItem v2 = new JMenuItem("Italic");
         JMenuItem v3 = new JMenuItem("Normal");
         JMenuItem v4 = new JMenuItem("Bold-Italic");
         View.add(v1);
         View.add(v2);
         View.add(v3);
         View.addSeparator();
         View.add(v4);
         bar.add(View);
         //Make "Help" on menu
         JMenu Help = new JMenu("Help");
         JMenuItem h1 = new JMenuItem("Help Online");
         JMenuItem h2 = new JMenuItem("E-mail Programmer");
         Help.add(h1);
         Help.add(h2);
         bar.add(Help);
         setJMenuBar(bar);
         //Make Contents of window.
         //Make "Subject" text field
         JPanel row2 = new JPanel();
         JLabel sublabel = new JLabel("Subject:");
         row2.add(sublabel);
         JTextField text2 = new JTextField("RE:",24);
         row2.add(text2);
         //Make "To" text field
         JPanel row1 = new JPanel();
         JLabel tolabel = new JLabel("To:");
         row1.add(tolabel);
         JTextField text1 = new JTextField(24);
         row1.add(text1);
         //Make "Message" text area
         JPanel row3 = new JPanel();
         JLabel Meslabel = new JLabel("Message:");
         row3.add(Meslabel);
         JTextArea text3 = new JTextArea(6,22);
         messagearea.setLineWrap(true);
         messagearea.setWrapStyleWord(true);
         JScrollPane scroll = new JScrollPane(text3,
                                  JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
                                  JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
         //SpaceLine
         JPanel spaceline = new JPanel();
         JLabel spacer = new JLabel(" ");
         spaceline.add(spacer);
         row3.add(scroll);
         add(row1);
         add(row2);
         add(spaceline);
         add(spaceline);
         add(row3);
         setVisible(true);
         public static void main(String[] arguments) {
         Message Message = new Message();
    }

    persiandude wrote:
    Topic: Need help with if, else, and which statements and loops.
    How would I display 60 < temp. <= 85 in java
    System.out.println("60 < temp. <= 85 in java");
    another question is how do I ask a question like want to try again (y/n) after a output and asking that everytime I type in yes after a output and terminate when saying No.Sun's [basic Java tutorial|http://java.sun.com/docs/books/tutorial/]
    Sun's [New To Java Center|http://java.sun.com/learning/new2java/index.html].Includes an overview of what Java is, instructions for setting up Java, an intro to programming (that includes links to the above tutorial or to parts of it), quizzes, a list of resources, and info on certification and courses.
    [http://javaalmanac.com|http://javaalmanac.com]. A couple dozen code examples that supplement [The Java Developers Almanac|http://www.amazon.com/exec/obidos/tg/detail/-/0201752808?v=glance].
    jGuru. A general Java resource site. Includes FAQs, forums, courses, more.
    JavaRanch. To quote the tagline on their homepage: "a friendly place for Java greenhorns." FAQs, forums (moderated, I believe), sample code, all kinds of goodies for newbies. From what I've heard, they live up to the "friendly" claim.
    Bruce Eckel's [Thinking in Java|http://mindview.net/Books/DownloadSites] (Available online.)
    Joshua Bloch's [Effective Java|http://www.amazon.com/Effective-Java-2nd-Joshua-Bloch/dp/0321356683/ref=pd_bbs_1?ie=UTF8&s=books&qid=1214349768&sr=8-1]
    Bert Bates and Kathy Sierra's [Head First Java|http://www.amazon.com/exec/obidos/tg/detail/-/0596004656?v=glance].
    James Gosling's [The Java Programming Language|http://www.bookpool.com/sm/0321349806].

  • Help with a simple program.

    I need some help writing a simple program. Can anybody help??
    thanks to all.
    2. HTML Java Source Code Reserved Word Highlighter
    Write a program that inputs a Java source code file and outputs a copy of that file with Java keywords surrounded with HTML tags for bold type. For example this input:
    public class JavaSource
    public static void main ( String[] args )
    if ( args.length == 3 )
    new BigObject();
    else
    System.out.println("Too few arguments.");
    will be transformed into:
    <B>public</B> <B>class</B> JavaSource
    <B>public</B> <B>static</B> <B>void</B> main ( String[] args )
    <B>if</B> ( args.length == 3 )
    <B>new</B> BigObject();
    <B>else</B>
    System.out.println("Too few arguments.");
    In a browser the code will look like this:
    public class JavaSource
    public static void main ( String[] args )
    if ( args.length == 3 )
    new BigObject();
    else
    System.out.println("Too few arguments.");

    Here is something that may get you started...
    import java.io.*; 
    import java.util.*; 
    public class HtmlJava{
         public static void main(String arg[]){
              if(arg.length!=1){
                   System.out.println("Usage java HtmlJava sourceFile");       
              else
                   new HtmlJava(arg[0]);
         HtmlJava(String source){
              try{
                   BufferedReader sourceReader=new BufferedReader(new InputStreamReader(new FileInputStream(source)));
                   BufferedWriter writer=new BufferedWriter(new OutputStreamWriter(new FileOutputStream(source+"Html.txt")));  
                   Vector keywords=new Vector();
                   addKeywords(keywords);
                   String line;
                   StringTokenizer tokenizer=null;
                   String word;
                   while((line=sourceReader.readLine () )!=null){
                        tokenizer=new StringTokenizer(line);
                        while(tokenizer.hasMoreTokens()){
                             word=tokenizer.nextToken();
                             if(keywords.contains(word)){
                                  writer.write(""+word+" ");
                             else{
                                  writer.write(word+" ");
                        writer.write("\r\n");
                   writer.close();
                   sourceReader.close(); 
                   System.out.println("Output File written to "+source+"Html.txt"); 
              catch(Exception ex){
                   ex.printStackTrace();      
         private void addKeywords(Vector keywords){
              keywords.addElement ( "abstract");
              keywords.addElement( "boolean");
              keywords.addElement( "break");
              keywords.addElement( "byte");
              keywords.addElement( "byvalue");
              keywords.addElement( "case");
              keywords.addElement( "cast");
              keywords.addElement( "catch");
              keywords.addElement( "char");
              keywords.addElement( "class");
              keywords.addElement( "const");
              keywords.addElement( "continue");
              keywords.addElement( "default");
              keywords.addElement( "do");
              keywords.addElement( "double");
              keywords.addElement( "else");
              keywords.addElement( "extends");
              keywords.addElement( "false");
              keywords.addElement( "final");
              keywords.addElement( "finally");
              keywords.addElement( "float");
              keywords.addElement( "for");
              keywords.addElement( "future");
              keywords.addElement( "generic");
              keywords.addElement( "goto");
              keywords.addElement( "if");
              keywords.addElement( "implements");
              keywords.addElement( "import");
              keywords.addElement( "inner");
              keywords.addElement( "instanceof");
              keywords.addElement( "int");
              keywords.addElement( "interface");
              keywords.addElement( "long");
              keywords.addElement( "native");
              keywords.addElement( "new");
              keywords.addElement( "null");
              keywords.addElement( "operator");
              keywords.addElement( "outer");
              keywords.addElement( "package");
              keywords.addElement( "private");
              keywords.addElement( "protected");
              keywords.addElement( "public");
              keywords.addElement( "rest");
              keywords.addElement( "return");
              keywords.addElement( "short");
              keywords.addElement( "static");
              keywords.addElement( "super");
              keywords.addElement( "switch");
              keywords.addElement( "synchronized");
              keywords.addElement( "this");
              keywords.addElement( "throw");
              keywords.addElement( "throws");
              keywords.addElement( "transient");
              keywords.addElement( "true");
              keywords.addElement( "try");
              keywords.addElement( "var");
              keywords.addElement( "void");
              keywords.addElement( "volatile");
              keywords.addElement( "while");
    }Hope it helped

  • Help with some simple coding

    Hello
    I am very new to Java and am currently studying a course in the language.
    I am working through a tutorial at the moment and a question has been asked and I am struggling a bit
    I have been given the code to a program that creates a window with a ball bouncing around inside the window.
    There are 2 classes (code below) - Call class - this contains all the code need to create the ball and BallWorld Class (the main Class) this create the window and moves the ball, it also detects if the ball hits the edge of the window, whne this happens it redirects the ball. I understand how all this code works
    I have been asked the following:-
    Rather than testing whether or not the ball has hit the wall in the nmain program, we could use inhertitance to provide a specialized forom of Ball. Create a class BoundedBall that inherits from the class Ball. The constructor for this class should provide the height and width of the window, which should be maintained as data fields in the class, rewrite the move method so that the ball moves outside the bound, it automatically reflects its direction. Finally rewrite the BallWorld class to use an instance of BoundedBall rather than ordianary Ball, and elimiante the bounds test in the main program.
    I am having trouble with this and I can not get my code to work, I think I may be going in completly the wrong direction with the code can sombody please provide me with a simple working code for both the BoundedBall and ammended BallWorld class, as this will help me understand whare I am going wrong
    Ball class
    //a generic round colored object that moves
    import java.awt.*;
    public class Ball {
    public Ball (Point lc, int r) {     //constructor for new ball
         //ball centre at point loc, radius rad
         loc = lc;
         rad = r;
    protected Point loc; //position in window
    protected int rad; //radius of ball
    protected double changeInX = 0.0; //horizontal change in ball position in one cycle
    protected double changeInY = 0.0; //vertical change in ball position in one cycle
    protected Color color = Color.blue; //colour of ball
    //methods that set attributes of ball
    public void setColor(Color newColor) {color = newColor;}
    public void setMotion(double dx,double dy)
    {changeInX = dx; changeInY = dy;}
    //methods that access attributes of ball
    public int radius() {return rad;}
    public Point location() {return loc;}
    //methods to reverse motion of the ball
    public void reflectVert(){ changeInY = -changeInY; }
    public void reflectHorz(){ changeInX = -changeInX; }
    //methods to move the ball
    public void moveTo(int x, int y) {loc.move(x,y);}
    public void move(){loc.translate((int)changeInX, (int)changeInY);}
    //method to display ball
    public void paint (Graphics g) {
    g.setColor(color);
    g.fillOval(loc.x-rad, loc.y-rad, 2*rad, 2*rad);
    BallWorld class
    //A bouncing ball animation
    import java.awt.*;          //import the awt package
    import javax.swing.JFrame;     //import the JFrame class from the swing package
    public class BallWorld extends JFrame{
         public static void main (String [] args){
              BallWorld world = new BallWorld(Color.red);
              world.show();
    for(int i = 0; i < 1000; i++) world.run();
    System.exit(0);
         public static final int FrameWidth = 600;
         public static final int FrameHeight = 400;
    private Ball aBall = new Ball(new Point (50,50),20);
         private BallWorld(Color ballColor) {     //constructor for new window
              //resize frame, initialize title
         setSize(FrameWidth, FrameHeight);
         setTitle("Ball World");
    //set colour and motion of ball
         aBall.setColor(ballColor);
         aBall.setMotion(3.0, 6.0);
         public void paint (Graphics g) {
    //first draw the ball
    super.paint(g);
         aBall.paint(g);
    public void run(){
              //move ball slightly
         aBall.move();
    Point pos =aBall.location();
    if ((pos.x < aBall.radius()) ||
    (pos.x > FrameWidth - aBall.radius()))
    aBall.reflectHorz();
    if ((pos.y < aBall.radius()) ||
    (pos.y > FrameHeight - aBall.radius()))
    aBall.reflectVert();
    repaint();
    try{
    Thread.sleep(50);
    } catch(InterruptedException e) {System.exit(0);}

    Here - you can study this :0))import java.awt.*;
    import javax.swing.*;
    public class MovingBall extends JFrame {
       mapPanel map   = new mapPanel();
       public MovingBall() {
          setBounds(10,10,400,300);
          setContentPane(map);
       public class mapPanel extends JPanel {
          Ball ball  = new Ball(this);
          public void paintComponent(Graphics g) {
            super.paintComponent(g);
            ball.paint(g);
    public class Ball extends Thread {
       mapPanel map;
       int x  = 200, y = 20, xi = 1, yi = 1;
    public Ball(mapPanel m) {
       map = m;
       start();
    public synchronized void run(){
       while (true) {
          try{
            sleep(10);
          catch(InterruptedException i){
            System.out.print("Interrupted: ");
          move();
    public void move() {
        map.repaint(x-1,y-1,22,22);
           if (x > map.getWidth()-20 || x < 0)  xi = xi*-1;
           if (y > map.getHeight()-20 || y < 0) yi = yi*-1;
           x = x + xi;
           y = y + yi;
           map.repaint(x-1,y-1,22,22);
        public void paint(Graphics g) {
           Graphics2D g2 = (Graphics2D)g;
           g2.setColor(Color.red);
           g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
                               RenderingHints.VALUE_ANTIALIAS_ON);
           g2.fillOval(x,y,20,20);
           g2.dispose();
    public static void main(String[] args) {
       new MovingBall().show();
    }

  • Need help with some simple N900 confusions/problem...

    Hi All
    Just got a UK N900 rx-51_2009se_2.2009.51-1.203.2_pr_203 and I'm rather struggling with some things:
    MMS; didnt get any operator settings for MMS, and can't find any way of creating an MMS. Can someone enlighten me?
    Can this thing not be used in portrait mode other than for the phone dial pad?
    When connecting to e.g. the wireless network they have in the pub, it wants me to push a button on the router, or type a pin into the router - why can't we just have the old fashioned way of "ask the pub staff what the key is, they tell me, and i type it in" - how do I enter the wpa key as a word without this pin/button pushing nonsense?
    How can I type my SMS etc with a 3x3 key pad (like a phone) - I really don't like qwerty on phones.. I'm after a portrait mode, can-be-operated-with-just-a-thumb, 3x3 button layout with predictive text (i.e. like every phone in the history of the world) - how do I do that?
    I can't find any form of Switch app (to copy contacts and messages off my old device) - how do we do this painlessly?
    How do I make the phone forget all the badly spelled words the previous owner seems to have entered?
    Can the thing that organises the main screen snap the icons to a larger grid or must I mess around nudging with the stylus till they line up? (They tend to jump out of line just as I remove the stylus from the screen)
    I'm sure I'll have more questions later..
    Thanks

    Answers to my own Qs for the benefits of others:
    MMS; didnt get any operator settings for MMS, and can't find any way of creating an MMS. Can someone enlighten me?
    No, use fMMS but be aware it's very beta, only allows picture sending with very rudimentary settings and you must change APN manually
    Can this thing not be used in portrait mode other than for the phone dial pad?
    No, apps have to be portrait specific and only dial pad and the browser (experimental) know of it
    When connecting to e.g. the wireless network they have in the pub, it wants me to push a button on the router, or type a pin into the router - why can't we just have the old fashioned way of "ask the pub staff what the key is, they tell me, and i type it in" - how do I enter the wpa key as a word without this pin/button pushing nonsense?
    No - a WONTFIX bug. Configure the connection manually in settings instead and you can type the key
    How can I type my SMS etc with a 3x3 key pad (like a phone) - I really don't like qwerty on phones.. I'm after a portrait mode, can-be-operated-with-just-a-thumb, 3x3 button layout with predictive text (i.e. like every phone in the history of the world) - how do I do that?
    No can do until someone on the maemo team etc creates an on screen keyboard that functions in this way
    I can't find any form of Switch app (to copy contacts and messages off my old device) - how do we do this painlessly?
    No. Transfer and Sync in Settings can retrieve only what Nokia Content Copier can (contacts, calendar, notes) but it's slightly more painless
    How do I make the phone forget all the badly spelled words the previous owner seems to have entered?
    Delete the .xxx.dictionary files from /home/user/.osso/dictionaries dir. May need to be root for this, see sites for info on adding repositories, installing rootsh etc
    Can the thing that organises the main screen snap the icons to a larger grid or must I mess around nudging with the stylus till they line up? (They tend to jump out of line just as I remove the stylus from the screen)

  • Help with something simple

    Hey guys so I'm trying to write a quick program that should be no problem but I hit a wall and have no idea what's going wrong. The part of my program that isn't working is as follows: I'm accepting a String hexadecimal value as input that can be any number of characters long (for example "FF34CD"). I want to convert this to decimal so what I have done is parsed the input string and assigned each character to a slot in an array called hexArray. I then wrote a loop that will populate decimalArray with the corresponding decimal values for the hex info (i.e. 1=1, 2=2, A=10, B=11, and so on). What I don't understand is that the code works fine for an input that is one character long (i.e. "F"), but as soon as I try a longer input, the decimalArray does not get populated at all. I have tried everything I can think of to make this work and I can't seem to figure it out. Any thoughts?
    * Write a description of class FAT here.
    * @author (your name)
    * @version (a version number or a date)
    public class FAT
        // instance variables - replace the example below with your own
        private String[] hexArray;
        private int[] decimalArray;
        private String hexValue;
        int test;
         * Constructor for objects of class FAT
        public FAT(String hexValueIn)
            hexValue = hexValueIn;
            hexArray = new String[hexValue.length()];
            decimalArray = new int[hexValue.length()];
            test = 0;
         * An example of a method - replace this comment with your own
         * @param  y   a sample parameter for a method
         * @return     the sum of x and y
        public int convertDecimal()
            int result = 0;
            int arraySize = hexValue.length();
            for(int i = 0; i < arraySize; i++)
                String entry;
                entry = hexValue.substring(i,i+1);
                hexArray[i] = entry;
            for(int i = 0; i < arraySize; i++)
                if(hexArray[i] == "0")
                    decimalArray[i] = 0;
                else if(hexArray[i] == "1")
                    decimalArray[i] = 1;
                else if(hexArray[i] == "2")
                    decimalArray[i] = 2;
                else if(hexArray[i] == "3")
                    decimalArray[i] = 3;
                else if(hexArray[i] == "4")
                    decimalArray[i] = 4;
                else if(hexArray[i] == "5")
                    decimalArray[i] = 5;
                else if(hexArray[i] == "6")
                    decimalArray[i] = 6;   
                else if(hexArray[i] == "7")
                    decimalArray[i] = 7;
                else if(hexArray[i] == "8")
                    decimalArray[i] = 8;
                else if(hexArray[i] == "9")
                    decimalArray[i] = 9; 
                else if(hexArray[i] == "A")
                    decimalArray[i] = 10;
                else if(hexArray[i] == "B")
                    decimalArray[i] = 11;           
                else if(hexArray[i] == "C")
                    decimalArray[i] = 12;
                else if(hexArray[i] == "D")
                    decimalArray[i] = 13;
                else if(hexArray[i] == "E")
                    decimalArray[i] = 14;
                else if(hexArray[i] == "F")
                    decimalArray[i] = 15;
            return result;
    }

    Yeah, I'm sorry, I should have been more specific, I'm not actually looking at the returned value, I'm simply running the convertDecimal code and then inspecting the decimalArray (as I haven't gotten to the part where I return the decimal value because the decimalArray is not populating correctly).
    For some reason it populates completely fine when the input is "F" but not "FF".
    Additionally, here are the following things I have done to rule out some issues:
    - I put a simple counter to make sure that the loop is still running the appropriate amount of times when the input length is >=2. The loop does run.
    - I hardcoded the amount of times the loop should run, rather than using arrayLength, still didn't work.
    - I even completely hardcoded, within the loop, the subscript values for the two arrays (i.e. instead of hexArray(i) and decimalArray(i), I actually wrote in: hexArray[0], decimalArray[0], hexArray[1], decimalArray[1], and so on and it STILL did not work. For some reason, whenever the input is longer than 1 character, not one of the IF statements is returning true, even though it (obviously) should be - like I said I even harcoded it to say:
    if(hexArray[0] == "F")
         decimalArray[0] = 15;... and so on. And it returns false for the IF statement EVEN IF I inputted, for example "FFFFF" where every single character in the input is an F - how could that if statement possibly be coming back false? And why does it come back true when the input is just 'F'??? I hope this helps clear up the issue I'm having. And thanks in advance for the responses guys you're awesome!
    Edited by: 991431 on Mar 3, 2013 7:51 AM
    Edited by: 991431 on Mar 3, 2013 8:00 AM
    Edited by: 991431 on Mar 3, 2013 8:01 AM

  • Can someone help with this simple application

    I am taking my first java class and there are limited resourses for the class as far as getting help with coding.
    Any hoo if any one can point me in the correct direction from the following information listed below I would be greatfull. I am trying to use the set and get methods on the instance veriables and then I am goign to post the results once I get them workign to a JOption pane window.
    examples are most welcome thanks
    // Invoice.java
    // Homework assignment 3.13
    // Student Arthur Clark
    public class Invoice // public class
    String partNumber;// instance veriable quantity
    String partDescription;// instance verialbe partDescription
    //constructors
    public void setpartNumber( String number, String description )
              partNumber = number; //initalize quantity
              partDescription = description; // initalize partDescription
         }// end constructors
    //method getpartNumber
    public String getpartNumber()
              return partNumber;
         }//end method getpartNumber
    public String getpartDescription()
              return partDescription;
         }// end method getpartDescription
    public void displayMessage()
         //this is the statement that calls getpartNumber
         System.out.printf(" part number # \n%s!\n the description", getpartNumber(), getpartDescription() );
    } // method displaMessage
    }// end method main
    // Fig. 3.14 InvoiceTest.java
    // Careate and manipulate an account object
    import java.util.Scanner;
    import javax.swing.JOptionPane;//import JOptionPane
    public class InvoiceTest{
         // main method begins the exciution of the program
         public static void main ( String args [] )
              // create Scanner to obtain input from mommand window
              Scanner input = new Scanner ( System.in );
              // create a Invoice object and assig it to mymethod
              Invoice myMethod = new Invoice();
              Invoice myMethod2 = new Invoice();
              // display inital value of partName, partDescriptoin
              System.out.printf( "inital partname is %s\n\n", myMethod.getpartNumber() );
              // prompt for and read part name, partDescription
              System.out.println( "please enter the Part Number:" );
              String theNumber = input.nextLine(); // read a line of text
              myMethod.setpartNumber( theNumber ); // set the part name with in the parens
              System.out.println();// outputs blank line
              myMethod.displayMessage();
              System.out.println( "please enter the Part Description" );
              String theDescription = input.nextLine(); // read a line of text
              myMethod2.setpartDescription( theDescription );// set the part description
              System.out.println();// outputs blank line
              myMethod2.displayMessage();
         }// end main mehtod
    }// end class

    //constructors
    public void setpartNumber( String number, String description )
              partNumber = number; //initalize quantity
              partDescription = description; // initalize partDescription
         }// end constructorsThe above code is not a constructor. You do not include a return type, void or anything else. Also, the constructor should be called the same as your class.
    public Invoice( String number, String description )
              partNumber = number;
              partDescription = description;
         } Another thing, comments should only be used when it isn't bleedingly obvious what your code is doing.
    P.S. is your middle initial C?

  • Im DROWNING! need help with a simple java assignment! plz someone help me!

    i need help with my java assignment, with validating a sin number. easy for must who know java. im drowning... please help!

    You will need to store each digit of the social insurance number in a field of its own. To validate the entry you will:
    1. Multiply the 2nd, 4th, 6th and 8th digit by 2.
    2. If the product of any of the four multiplications result in a value greater than 9, add the two resulting digits together to yield a single-digit response. For example 6 * 2 = 12, so you would add the 1 and the 2 to get a result of 3.
    3. Add these four calculated values together, along with the 1st, 3rd, 5th, and 7th digits of the original number.
    4. Subtract this sum from the next highest multiple of 10.
    5. The difference should be equal to the 9th digit, which is considered the check digit.
    Example of validating S.I.N. 765932546
    1st digit 7
    2nd digit (6*2 =12 1+2=) 3
    3rd digit 5
    4th digit (9*2 = 18 1+8 =) 9
    5th digit 3
    6th digit (2*2 = 4) 4
    7th digit 5
    8th digit (4*2 = 8) 8
    Total 44 next multiple of 10 is 50
    50-44 = 6 which is the 9th digit
    Therefore the S.I.N. 765932546 is Valid
    ********* SIN Validation *********
    Welcome - Please enter the first number: 120406780
    Second digit value multiplied by 2 4
    Fourth digit value multiplied by 2 8
    Sixth digit value multiplied by 2 12
    Eighth digit value multiplied by 2 16
    Value derived from 6th digit 3
    Value derived from 8th digit 7
    The total is 30
    Calculated digit is 10
    Check digit must be zero because calculated value is 10
    The SIN 120406780 is Valid
    this is my assignemtn this is what i have! i dont know where to start! please help me!
    /*     File:     sinnumber.java
         Author:     Ashley
         Date:     October 2006
         Purpose: Lab1
    import java.util.Scanner;
    public class Lab1
              public static void main(String[] args)
                   Scanner input = new Scanner(System.in);
                   int sin = 0;
                   int number0, number1, number2, number3, number4, number5, number6, number7, number8;
                   int count = 0;
                   int second, fourth, sixth, eighth;
                   System.out.print("\t\n**********************************");
                   System.out.print("\t\n**********SIN Validation**********");
                   System.out.print("\t\n**********************************");
                   System.out.println("\t\nPlease enter the First sin number: ");
                   sin = input.nextInt();
                   count = int.length(sin);     
                   if (count > 8 || count < 8)
                   System.out.print("Valid: ");
         }

Maybe you are looking for

  • Error 2318 when installing/ uninstalling itunes

    My itunes is having a problem (error 2318) with installing the new update so i decided to uninstall it first then reinstall it. But I am getting the same error when I try to uninstall itunes. I already uninstalled quicktime, bonjour, etc. But I just

  • Mac Intel and Real Player - some info

    I've been grappling with the problem of getting Real Player to run on an iMac Intel for some weeks. I have now solved my problem so post my experience here in case it is helpful to anyone else. Only a few weeks ago Realplayer was not written to run o

  • Firefox will not launch in OSX Lion (10.7)

    It's simple. I upgraded last night to OSX 10.7 (Lion). Today Firefox will not open. I get a dialog that it can't open... What gives?

  • Effective date for a record

    Hello Experts, I am working on a project, where there is a requirement to hide the record till the effective date is kicked-off. For example, if I create the product record on 20-Jun-08 and mention the effective date as 20-Jul-2008, the record should

  • Can't open graphic attachments to thunderbird

    Thunderbird 24.5.0 on Win7.// Emails with graphics attachments (.jpg etc) cannot be opened directly from Thunderbird. When clicked to open, anti-virus scans them, but no further action takes place. In order to open graphics attachments, I must save t