Has anyone created a webserver with a GSM shield rather than a wifi shield?

I have created a web server with a wifi shield but I don't really know how to do it with a GSM shield.

How do you do the equivalent of setting up a static IP address on an ADSL modem or else use a DNS service like duckdns.org with a 'mobile' arduino?

Did you try Google? I did and found this:

Keep in mind that your GSM service provider will probably:

  1. not allow you to have a fixed IP address, and
  2. allocate your device a private, DHCP-assigned address that isn't accessible from the outside world

It's worth investigating those two issues before you go too far down this path. They (among others) are reasons why many mobile devices don't run as servers.

johnwasser:
Did you try Google? I did and found this:

https://www.arduino.cc/en/Tutorial/GSMExamplesWebServer

Doesn't really explain the nuts and bolts of it beyond the arduino code.

AT+CIFSR Get Local IP Address
Local IP address relative to what? Presumably not relative to you local home network on the ADSL modem.

How would you do port forwarding on this and provide access from any where in the world?

jpskippy:
Keep in mind that your GSM service provider will probably:

  1. not allow you to have a fixed IP address, and
  2. allocate your device a private, DHCP-assigned address that isn’t accessible from the outside world

It’s worth investigating those two issues before you go too far down this path. They (among others) are reasons why many mobile devices don’t run as servers.

That is what I am concerned about actually.

It is looking like the only value of a GSM shield is to provide a secure SMS interface to your arduino based device.

You can’t do much more than that with it.

boylesg:
It is looking like the only value of a GSM shield is to provide a secure SMS interface to your arduino based device.

You can't do much more than that with it.

I think you're fine as long as you don't want to host anything on your device, i.e. your traffic is all outgoing.

For example, if you want to read a sensor and post its status/value somewhere like Thingspeak, that's going to work because it doesn't rely on anyone being able to directly access any services on your device.