Using Chromium Remote Debugging from External Device - debugging

Chrome can be run to support remote debugging by starting it via the command line with a prompt such as chrome.exe --remote-debugging-port=9222 --user-data-dir=C:/foo. This is often used to debug on android or iOs using a Browser on a Desktop Device but I would like to debug chrome running on a desktop PC. from a "client browser" on the same machine one can call localhost:9222 and see the server browser, calling localhost:9222/json will result in a json representation of the tabs open in the "server browser". This works just fine.
However, when I try to use another device in the same (wifi) network by calling [local IP]:9222 or [local IP]:9222/json (local IP is the IP of the server browser) I get a connection timeout. Is it possible to use remote debugging in such way? Are any other switches needed when starting the browser?
Edit I have found some use of forward tcp for the debugging of mobile devices, but there does not seem to be such a switch for chrome.
Edit 2 This seems to be a bit of a duplicate of the questions here and here however, as of yet I have not gotten the solutions presented there to work.
So, apparently this comes down to forwarding a port to localhost:9222. However, at least on windows machines I have no luck with SSH tunnels. Are there any other ways to forward on the machine?

As you've mentioned it, the solution is to forward the port 9222. Below you find approaches for Linux and Windows.
Linux
After having started chrome with
chrome --remote-debugging-port=9222
Forward the port
ssh -L 0.0.0.0:9223:localhost:9222 localhost -N
This way you can access the debuggin interface from an external device on port 9223 using a Chrome browser.
Windows
As seen in this answer, on windows (tested on 7,8) the easiest way to do portforwarding without 3rd party apps is via netsh
I've created a batch file with the following content. It has to be ran as administrator, and with no previous chrome windows open:
netsh interface portproxy delete v4tov4 listenport=9222 listenaddress=0.0.0.0
start /b cmd /c call "\program files\google\chrome\application\chrome.exe" -remote-debugging-port=9222
timeout 5
netsh interface portproxy add v4tov4 listenport=9222 connectaddress=127.0.0.1 connectport=9222 listenaddress=0.0.0.0
This way you can access the debuggin interface from an external device on port 9222.
Make also sure that no firewall is blocking the corresponding port.

You can achieve the same behaviour by adding the argument
--remote-debugging-address=[YOUR_EXTERNAL_IP_ADDRESS] as reported here, without any additional software other than Chrome itself.

I've successfully used RInetD for easy port-forwarding in Windows 7, tried this and it worked like a charm, externally debugging a Chrome browser in Windows from a Chrome in Mac/Ubuntu.
You can download rinetd from:
http://www.boutell.com/rinetd/
Unzip the file, create an empty file with any name (I used rinetd.conf), with this content:
0.0.0.0 9223 127.0.0.1 9222
The in Windows console run it with:
rinetd.exe -c rinetd.conf
And voila!

Related

Scripting Website Interaction With Firefox

I would like to script Firefox to do the following:
Open my website in multiple tabs
Perform some action on the loaded site (e.g. click on a button)
Preferably running some script (e.g. Python) and somehow connect to my local Firefox and send some commands over.
I know that I can do (2) on the web console with, e.g. $x('/xpath/to/my/button')[0].click(), so I thought of using Firefox's remote debugging mechanism, but
I'm not sure how to "talk" to Firefox using a script through the debugging port (i.e. what syntax)
Somehow I can't even get the remote debugging port to open.
I've tried the following solutions:
Start Firefox with firefox --start-debugger-server 9000
Enter listen 9000 on the web console
Enable Enable browser chrome and add-on debugging toolboxes and Enable remote debugging
All of the above at the same time
But still couldn't get remote debugging to work (didn't open the expected listening port).
Any idea how I could do the above (with remote debugging or something else)?

Running visual studio solution on local host Google Chrome

When trying to run a visual studio application on localhost using Google Chrome, I always get this screen:
http://imgur.com/iFCj0iQ
It seems to be automatically redirecting to the default page of IIS.
When running on Internet explorer it runs ok. Any help?
Hey wait a moment are you looking for localhost or not? I mean, are you accessing from the same computer or not?
TO ACCESS FURTHER INFO
to discover which process is using the defaul port for http 80 run nestat -ano and look for pid that has port 80 in his local address and the kill it with taskkill
TO DISABLE IIS
To disable IIS you have to go in settings -> "turn windows features on or off" and deselect "Internet information service"
for more info: http://windows.microsoft.com/en-us/windows/turn-windows-features-on-off#1TC=windows-7

Localhost on Windows 7

I want to enable a localhost on Windows 7 to be able to build websites with Chrome without a distant server. I would like to not install anything, and be able to, for example, navigate to http://localhost/something/somethingElse/index.html.
Anyone knows how?
In order to activate localhost server on Windows 7 navigate to:
-> Control Panel -> Programs and Features -> Turn Windows features on or off
Then search for Internet Information Services and check its checkbox.
Wait for Windows to make the changes, no need for immediate restart, the server will be enabled.
You can now navigate to
127.0.0.1
or
http://localhost
There is a simple chrome extension "200 OK". Which runs a web server on localhost.
Custom port settings
Choose your project folder and start the server

Can't start hostednetwork

When I try to run netsh wlan start hostednetwork, I get the following message:
C:\Windows\system32>netsh wlan start hostednetwork
The hosted network couldn't be started.
The group or resource is not in the correct state to perform the requested operation.
I'm running this with admin privileges, so it's not the notorious
C:\Users\Kevin>netsh wlan start hostednetwork
You must run this command from a command prompt with administrator privilege.
How do I get the hosted network "in the correct state"?
This happen after you disable via Control Panel -> network adapters -> right click button on the virtual connection -> disable
To fix that go to Device Manager (Windows-key + x + m on windows 8, Windows-key + x then m on windows 10), then open the network adapters tree , right click button on Microsoft Hosted Network Virtual Adapter and click on enable.
Try now with the command netsh wlan start hostednetwork with admin privileges. It should work.
Note: If you don't see the network adapter with name 'Microsoft Hosted Network Virtual Adapter' try on menu -> view -> show hidden devices in the Device Manager window.
Let alone enabling the network adapter under Device Manager may not help. The following helped me resolved the issue.
I tried Disabling and Enabling the Wifi Adapter (i.e. the actual Wifi device adapter not the virtual adapters) in Control Panel -> Network and Internet -> Network Connections altogether worked for me. The same can be done from the Device Manager too. This surely resets the adapter settings and for the Wifi Adapter and the Virtual Miniport adapters.
However, please make sure that the mode is set to allow as in the below example before you run the start command.
netsh wlan set hostednetwork mode=allow ssid=ssidOfUrChoice key=keyOfUrChoice
and after that run the command netsh wlan start hostednetwork.
Also once the usage is over with the Miniport adapter connection, it is a good practice to stop it using the following command.
netsh wlan stop hostednetwork
Hope it helps.
First off, when I went into cmd and typed "netsh wlan show drivers", I had a NO for hosted network support too. Doesn't matter, you can still do it. Just not in cmd.
I think this problem happens because they changed the way hosted networks work in windows 10. Don't use command line.
Just go on your pc to settings>Network>Mobile Hotspot and you should see all the necessary settings there. Turn it on, set up your network.
If it's still not working, go to Control panel>Network and Internet>Network and Sharing Center>Change Adapter Options> and then click on the properties of the network adapter that you want to share. Go to the sharing tab, and share that internet connection, selecting the name of the adapter you want to use to share it with.
I encountered this problem on my laptop. I found the solution for this problem.
Test this command in the command prompt "netsh wlan show driver".
See Hosted network supported.
If it is no,
Then do this
Go to device manager.
Click on view and press on "show hidden devices".
Go down to the list of devices and expand the node "Network Devices" .
Find an adapter with the name "Microsoft Hosted Network Virtual Adapter" and then right click on it.
Select Enable
This will enable the AdHoc created connection, it should appear in the network connections in Network and Sharing Center, if the AdHoc network connection is not appear then open elevated command prompt and apply this command "netsh wlan stop hostednetwork" without quotations.
After this, the connection should appear.
Then try starting your connection. It should work fine.
First check if your wlan card support hosted network and if no update the card driver. Follow this steps
1) open cmd with administrative rights
2) on the black screen type: netsh wlan show driver | findstr Hosted
3) See Hosted network supported, if No then update drivers
Symptoms
You install an application that uses Microsoft Virtual WiFi technology on a computer that is running Windows 7 or Windows Server 2008 R2. However, the application does not work after the computer restarts. Additionally, you receive an error message that resembles the following:
The hosted network couldn't be started. The group or resource is not in the correct state to perform the requested operation.
Cause
This issue occurs because the Virtual Wi-Fi filter driver does not create the Virtual Wi-Fi Adapter correctly when a PNP resource rebalance occurs during the startup process.
Notes
1.This issue may occur when a Plug and Play (PNP) resource rebalance occurs during the startup process. The PNP resource rebalance is usually triggered by a change to the hardware configuration.
2.If you open Device Manager when this issue occurs, you notice that the Virtual WiFi Adapter is not created.
If you can't restart your hostednetwork after rebooting the OS ,just Try this hotfix .It fixed my problem. Or try to figure it out by yourself according to the Symptoms and Cause mentioned at the start of my answer.
Often, I've found that the solution to this problem can be fixed by disabling and then enabling the Wifi hardware. I've made a script to do this automatically instead of doing it manually by going to the device manager. You can find it here
Some fixes I've used for this problem:
Check if the connection you want to share is shareable.
a. Press Win-key + r and run ncpa.cpl
b. Right click on the connection you want to share and go to properties
c. Go to sharing tab and check if sharing is enabled
Run devmgmt.msc from the run console.
a. Expand the network adapters list
b. Right click -> properties on the adapter of the connection you want to share
c. Go to power management tab and enable allow this computer to turn off this device to save power. Restart your laptop if you've made changes.
Check if airplane mode is disabled. You can enable airplane mode and then turn on the wi-fi, you can never know. Do disable airplane mode if it is on.
Use admin command prompt to run this command.
If none of the above answers worked for you, You can try the following solution which worked for me.
Go to Services manager(services.msc) and enable the below services and try again.
WLAN AutoConfig
Wi-Fi Direct Services Connection Manager Service
Hope this solved your problem.
The hosted network won't start if there are other active wifi adapters.
Disable the others whilst you're starting the hosted network.
Fixed by installing "Wifi Direct Access Point". HostedNetwork is not well supported by some Windows 10 drivers.

VM cannot access Windows 7 host website

Im developing a website using VS2008 on Windows 7. I am running a VM with IE6 on it and want to test that the site works ok on IE6. On the VM IE6 browser I type http://192.168.0.100/default.aspx since my router gave the windows host that ip address but the browser errors with : Cannot find server or DNS Error
I can ping the host though through a command window.
Could this be a firewall issue on Windows7 and how can I open it up to allow VM browsing of the host website?
The most dangerouse but simplest way to test this theory:
Open the "Network and Sharing Center". If you look at the left panel at the button there should be a "Windows Firewall" under the "See also" section.
On the left again there should now appear a "Turn Windows Firewall on or off"
So you can now quickly test and see if it is in fact your firewall blocking it.
I would not keep the firewall off, and would consider plugging out the network cable before I do this.
Hope it helps
Rihan

Resources