Hey guys,
My friend and I are trying to send a UDP packet from the Android emulator to a server on our wifi network. However, the packet never actually reaches the server. If the server receives it, it should start sending
UDP packets back.
The program we wrote works outside of the emulator inside the windows environment, and using Wireshark, we see that the packet is sent to the correct IP address and the correct MAC address for the server. When we attempt to send the packet from the emulator, the dog does not respond how it should if it received the packet. In Wireshark we can see that the emulator sends the packet to the correct IP address for the dog, but not the correct MAC address. It is sending it to the MAC address of the router we are plugged into.
We want to specify the packet so that it sends to the correct MAC address but we cannot figure out how to do this. Any help would be great.
Thanks in advance!
Related
Background to my problem
At our office, we have Small Bus Server 2003 with the new Exchange SP installed. Our web site domain name is not mapped to our local server, but hosted on a external commercial one.
Our router/firewall has one fixed IP address that is connected to the web, while all the workstations have local address like 192.168.10.xxx, etc.. To configure Activesnc to work from outside our network, all I had to do is enter the fixed IP address into the server settings in Active sync and it connects.
The problem occurs if the Wizard is connected to a PC via USB in the network. At this point, active sync is looking for an external IP address instead of the real address of the server which is 192.168.10.xxx.
So, I configured a custom DNS with our domain hosting provider to have "mail.domain.name" redirected to our fixed IP address. With a little tweaking on the router, this works! In ActiveSync I can enter just "mail.domain.name" instead of the external IP and it works from the outside.
Now, to sync while connected to the network, I have to manually change the server address every time to reflect 192.168.10.100. Ideally, i would like to somehow tell my local server that any request inernally sent to "mail.domain.name" gets redirected to 192.168.10.100 instead of going out on the web. This would solve my problem of changing the server address everytime I'm in the office.
Does anyone know how to do this in Small Business Server 2003? Is there another way to keep the same server settings in/out of our network?
Thanks
Rob
How could I get the IP address to my G1? thats the Ip my phone uses for internet not the ip when its connect via wifi
You have a couple options. Using Terminal Emulator you can use the netstat command or you can use the easy way and go to www.ip-address.com. What do you need your uip address for anyway? You can't remote in through edge or 3g like you can wifi though telnetd.
thanks...................
aad4321 said:
now i dont know the name of the app which was released last week in the market, but it uses dynamic dns and updates your G1's IP address automaticly to a domain name.
Click to expand...
Click to collapse
You're referring to DynDNS and you can also find it in some routers. Unfortunatly, I believe there is a service charge for it. I use no-ip instead because it works just as well. But as far as I know DynDNS is the only app that offers this. But again... why do you need it??? I noticed that when I go to whatismyipaddress.com and when I do Netstat in Terminal Emulator I get two different ip addresses. I don't know what's up with that but I'm thinking that the netstat is the ACTUAL ip address and the ip address shown on the web site is a proxy. I would imagine that T-Mobile would not be stupid enough to leave their subscribers phones open to everyone else. It's very simple to get someone elses ip address if you're a host of a web server since all ip addresses are logged and without security (such as a proxy) it could leave all users vunerable. So my conclusion... if you had your real ip address... what do you plan on doing with it? You can only access your G1 through WiFi as far as I know. But correct me if I'm wrong.
I want to visit this page on my server
http://192.168.2.53:8080/tma/majBtm/androidToDesktop
Since it's a dynamic IP, the above mentioned IP address keeps changing everytime I reset my connection. I replaced the IP with a DynDNS hostname I created
http://tmagrails.dyndns-ip.com/tma/m...droidToDesktop
However, I'm unable to access this page from a remote machine (any machine outside the server's network)
I was asked to forward the port 80 to 8080. I'm unable to do so as there is no port forwarding option in my router page. I use a UTStarcom UT300R2T modem/router.
Is there any workaround for this?
Please advice.
blueren said:
I want to visit this page on my server
http://192.168.2.53:8080/tma/majBtm/androidToDesktop
Since it's a dynamic IP, the above mentioned IP address keeps changing everytime I reset my connection. I replaced the IP with a DynDNS hostname I created
http://tmagrails.dyndns-ip.com/tma/m...droidToDesktop
However, I'm unable to access this page from a remote machine (any machine outside the server's network)
I was asked to forward the port 80 to 8080. I'm unable to do so as there is no port forwarding option in my router page. I use a UTStarcom UT300R2T modem/router.
Is there any workaround for this?
Please advice.
Click to expand...
Click to collapse
This IP Address is a local-only IP address.
IP addresses in the 192.168.x.x ranges cannot be accessed from the internet.
You need to port forward a particular port on your router, and map that to the internal address. Your router has an external facing IP address, and you need a router that supports DynDns in its control panel.
You can find your external IP via www.whatismyipaddress.com but to get this working you need to be able to setup an incoming port forward, so port 8080 is directed by your router to your PC. The DynDns is currently pointing to
tmagrails.dyndns-ip.com (117.192.174.157)
So you just need to somehow forward all incoming connections to port 8080 onto that desired computer, and give that machine a static IP address on the internal network via DHCP pre-allocation.
My android phone (galaxy s5) and Windows 7 computer are both connected on the same network wirelessly via a router.
I would like to send a text message to the phone and the user would just click 'OK' or similar and the message would go away until the next one is sent from the software application I'm writing in visual basic .net.
Thing is, I can't use SMS or something similar because there will be no internet/cellular connections. Only the two devices connected on the same local network.
I have tried to use msg(net send) shell command to send a message to my phone's ip address but I returned "Error 1722 getting session names", net view also doesn't show the device so it seems it not picking it up on the network. In the DHCP list of the router I can see the device listed though.
Not sure if i need to enable/open something on the device or maybe install an app to intercept the messages?
Anyone have any ideas?
Thank you
EDIT: arp -a command does list the ip phone's IP address
Maybe not 100% what you are looking for ...but give it a try ?
https://play.google.com/store/apps/details?id=com.aob.android.ipmsg
This app has this function: https://play.google.com/store/apps/details?id=com.androidlost&hl=en
No DNS Server / port forward to port 53 on Android 4.4.2 w/root & WiFi Tether Router
I tried everything I could think of before posting this. If this is the wrong location for this kind of issue please let me know.
Anyway...
I have a rooted phone (Samsung Galaxy Avant) running the stock Android 4.4.2 that came with the phone and I use WiFi Tether Router to provide my other devices with an internet connection. Everything works perfectly and I get very fast LTE service both on my desktop and laptop (using a user agent switcher on my browser). However, I need to do some custom DNS routing and I am running into some issues.
What I want:
1.) When a browser on a device that is tethered to my phone through WiFi Tether Router requests a website then the DNS should run through the default DNS I specify (either Google's 8.8.8.8/8.8.4.4 or OpenDNS or my mobile provider's DNS servers) and load the website from the public internet.
2.) When a browser on a tethered device requests my-example-domain.com or my-other-domain.com I want the DNS to resolve to an IP of my choosing. In this case (for now, but I want to be able to change it), I want it to resolve to the IP address of my phone that is providing the tethering. The local IP address of the phone is is 192.168.11.254, which is the Default Gateway address when running Wifi Tether Router. I have a web server running on the phone on port 8080 and I want it to receive the requests for my two domain names
I want nearly all traffic from tethered devices to resolve through public DNS servers, but for those two specific domains I want the DNS to be handled by the DNS server running on the phone. I want those specific requests to resolve to the same phone that is providing the tethering and to have the web server running on the phone serve the files.
I have most of this working correctly except for one issue. Here are the details.
I am using three devices:
Galaxy Avant to provide tethering "phone"
Windows Laptop "laptop"
Windows Desktop "desktop"
Scenario 1 - Using Google DNS on phone:
In WiFi Tether Router under DHCP Settings I have:
HTML:
IP Address: 192.168.11.0 (0 is disabled and can't be changed)
DNS 1: 8.8.8.8 (google)
DNS 2: 8.8.4.4 (google)
When either of the Windows computers connects via wifi they receive the following:
HTML:
Default Gateway: 192.168.11.254
IP Address: 192.168.11.1XX
The laptop has a dynamic IP and DNS assigned by the DHCP in Wifi Tether Router on the phone.
The desktop has a static IP of 192.168.11.102 with its DNS pointing to the phone at 192.168.11.254 for DNS 1 and 192.168.11.0 for DNS 2 (I know the second one is invalid, but Windows requires two)
Under this scenario both the laptop and the desktop can access live websites through their browsers.
I'm assuming that the DNS is running through Google's 8.8.8.8 since that is the primary DNS for Wifi Tether Router and both computers are getting their DNS from the phone.
Scenario 2 - DNS running on Windows Desktop:
In WiFi Tether Router under DHCP Settings I have:
HTML:
IP Address: 192.168.11.0 (0 is disabled and can't be changed)
DNS 1: 192.168.11.102 (desktop)
DNS 2: 192.168.11.102 (desktop)
Both Windows computers still receive the following:
HTML:
Default Gateway: 192.168.11.254
IP Address: 192.168.11.1XX
Since the DNS 1 and DNS 2 settings for WiFi Tether Router now point to 192.168.11.102 (desktop) instead of 8.8.8.8/8.8.4.4 (Google) the DNS is now handled by the desktop.
The desktop is running Simple DNS Plus which is configured to point my-example-domain.com and my-other-domain.com to the IP address of the phone at 192.168.11.254.
There is a web server running on the phone.
Both computers can still access live websites through their browsers and both computers can access the web server running on the phone by visiting my-example-domain.com:8080 or my-other-domain.com:8080
The only records I have defined in Simple DNS Plus on the desktop are for my two domains, so I'm assuming that the rest of the DNS requests are getting passed back to the phone to be handled by the phone's default DNS servers since WiFi Tether Router no longer knows about Google's DNS (because it is now pointing at the desktop to resolve DNS instead). The DNS settings for the wifi network adapter on the desktop are pointing at the phone's 192.168.11.254 address still (which seems like it should create some sort of loop since the phone and desktop both point at each other, but it doesn't? Maybe someone can clear this part up for me), so even though my-example-domain.com and my-other-domain.com are being redirected by the DNS server on the desktop to the IP of the phone where the web server is listening, every other DNS request must be going back to the phone and resolving there since the phone is the desktop's only source of internet and the live websites actually resolve. The desktop must be either sending the request back to the phone to resolve or using the phone's data, but either way the desktop is forwarding the domains that it is supposed and leaving the rest up to the DNS on the phone somehow. I'd like to have a better idea of how this actually works.
In my head it's doing the following:
Request for my-example-domain.com or my-other-domain.com from laptop:
Checks DNS on WiFi Tether Router on phone > Forwards all DNS to Simple DNS Plus on Desktop > Points and resolves to web server on phone
Request for any other domains from laptop:
Checks DNS on WiFi Tether Router on phone > Forwards all DNS to Simple DNS Plus on Desktop > No record found for host > Returns DNS request to WiFi Tether Router on phone > Resolved by default DNS of phone
Scenario 3 - DNS running on Phone:
I installed the "DNS Server" app from Ice Cold Apps on the phone and created a DNS server instance, but I am not allowed to choose port 53 so I chose to have it assign random port (40747). If I try to set the port for the DNS Server to 53 I receive an error saying "The port you entered is not valid, try another one (this normally happens because Android doesn't allow a server on that port or another app is using the port)."
I created a rule that points my-example-domain.com and my-other-domain.com to the IP address of the phone at 192.168.11.254. The rules are very simple, you can only provide a domain name and an IP address for the DNS Server to route it to, nothing more.
In the DNS Server settings there is a checkbox for "Use a DNS server for requests" which is checked by default with a box attached to it for "DNS Server IP" which is set to 8.8.8.8:53 by default, which is Google's DNS on port 53.
There is another checkbox (that I unchecked) which says "Use a web DNS server for requests" with a box attached to it for "Web DNS server url" that is pre-populated with a PHP url from China
There isn't much documentation for these apps, so I assumed that it was ok just to use the Google servers from the first setting and skip the unfamiliar web DNS server stuff. I'm guessing those settings are supposed determine where the DNS Server app checks for hosts you didn't explicitly define with a rule. For example, if someone types one of my two domains name it should forward, but any other name should be checked with that provided DNS server. I could be totally wrong about this, so some clarification would be nice.
In WiFi Tether Router under DHCP Settings I have:
HTML:
IP Address: 192.168.11.0 (0 is disabled and can't be changed)
DNS 1: 192.168.11.254 (phone)
DNS 2: 127.0.0.1 (phone)
There is no option for port for the DNS so it's checking port 53 on my phone, but the DNS server wasn't allowed to start on 53 so it's listening on 40747 instead. This means I need to forward port 53 to port 40747 so that the DNS requests sent to DNS Server on port 53 by WiFi Tether Router will be answered.
I installed the "Port Forward Ultimate" app from Ice Cold Apps on the phone. There is only one setting, a checkbox which says "Force using internal iptables (advanced)". I left it unchecked initially, but found that the port forwarding server will not start unless that box is checked (and it doesn't matter what ports I'm trying to forward, without that box checked it simply will not start).
I created the following rule in the port forwarding app:
HTML:
Source port: 53
Destination port: 40747
I left the "Forward to external host" box unchecked and the accompanying "Forward to host/IP" box empty.
I started Port Forward Ultimate, DNS Server, and WiFi Tether Router.
Both the desktop and the laptop connect to WiFi Tether Router, but neither of them can access live websites and neither of them resolve my-example-domain.com or my-other-domain.com
I first thought that maybe the port forwarder couldn't bind to 53, so to test I changed my port forwarding settings to:
HTML:
Source port: 53
Destination port: 8080 (the port the web server is running on the phone)
When I visit 192.168.11.254:53 in Internet Explorer 9 from the desktop or laptop it works just fine (Chrome and Firefox won't let you browse websites on port 53, they show show a security error, but IE works). I see the website from the web server that is running on port 8080 on the phone, so port 53 is bound and forwarding to 8080, but when I try to forward 53 to 40747 (the port of the DNS server on the phone) it doesn't work. I've tried the DNS server on various ports (40747, 1029, etc). I made sure the port forwarder set to forward 53 to the port of the DNS server. I also made sure WiFi Tether Router set to use the phone (192.168.11.254) as the DNS, but live websites won't load and the the rules I have in the DNS server app on the phone do not cause my-example-domain.com or my-other-domain.com to resolve to either the phone itself on 192.168.11.254 or to the desktop web server running at 192.168.11.102 (I've tried setting it to forward to both).
I can forward port 53 directly to the web server on the phone or to the web server on the desktop (by checking "forward to external host" and providing the IP of the desktop), but when I set 53 to forward to the DNS server on the phone then the DNS server never does its job, as if it isn't even receiving requests.
When I run nmap on the phone at 192.168.11.254 with DNS and port forwarding enabled on the phone I get:
HTML:
PORT STATE SERVICE VERSION
53/tcp filtered domain
With port forwarding off I get:
HTML:
PORT STATE SERVICE VERSION
53/tcp open domain dnsmasq 2.62
When I run nmap on 40747 (or 1029 or any of the ports I've tried for the DNS server) with DNS running on the phone I get:
HTML:
PORT STATE SERVICE VERSION
1029/tcp filtered ms-lsa
WiFI Tether has no problem handing off the DNS to the Simple DNS Plus running on the desktop, but when it tries to hand the DNS off to DNS Server running on the phone it doesn't resolve.
Perhaps there is some kind of conflict I don't understand, like maybe when the DNS setting in WiFi Tether Router tries to connect to 192.168.11.254 on port 53 and is supposed to get forwarded. I do know that at all times I can access 192.168.11.254:8080 from the desktop as long as the web server is running and I am tethered to my phone.
Lastly, there is a checkbox in the DHCP settings for WiFi Tether Router which says "DNS Redirect" that when checked displays two IP address boxes for DNS 1 and DNS 2 under a header that says "Redirect DNS To". I'm not sure what this is, but it could be important. The only other two options under DHCP are "Use Internal DHCP" and "Use Alternative DHCP Config".
All I want is for most requests from tethered devices to go through standard DNS while the domain names I add host records for in the DNS Server on my phone will resolve to the IP addresses I specify, whether those IP addresses are external or the IP of the phone itself where the web server is running.
I have most of this working, including being able to hand off the DNS from WiFi Tether Router to one of my computers to do the routing, but I want to have it all self-contained on my phone as a standalone setup.
The web server is working, the tethering is working, the tethering handing off the DNS is working, the DNS on the desktop correctly routes the domains to the phone and the rest of the requests to live DNS, and the port forwarding appears to be working when forwarding 53 to my web server, so I'm just kind of stuck.
I've been working on this for 12 hours and I've hit a wall.
It could have something to do with needing to forward both UDP and TCP in the port forwarding, although there's no direct option for that except a box to create custom scripts that modify iptables, which I've tried but had no luck with. Or maybe Wifi Tether Router binds port 53 and is conflicting with the port forwarding / DNS server.
I'm open to any ideas as to why running WiFi Tether Router through the DNS on my phone with port forwarding doesn't work, but running WiFi Tether Router through DNS on my desktop does (especially since the DNS on the desktop correctly points my two domain names back to the phone for the web server to answer and also resolves live websites, both tasks that are receiving and sending requests through the phone); your input will be greatly valued.
The goal of this entire effort has been to create portable and private prototypes of browser-based applications that I've developed for still-to-go-live domain names and be able to run them entirely from my phone on any device that I tether (without modifying the hosts file on the tethered device) so that I can do on-the-fly demos even in areas with spotty data service. In addition, I can load up my SD card with media assets and personal content such as images, audio, and video and have everything available instantly in the web applications when I demo. I can also ensure that the only way to see particular applications I'm developing or access demo data is if you are directly tethered to my device. I can run full database software, application servers, and everything else directly from my phone and make changes to the apps instantly. All I need now is this one little DNS fix and I'm set.
Thanks!