The Mer Wiki now uses your Mer user account and password (create account on https://bugs.merproject.org/)
Minimal/Networking
(→Pre Provisioned connection) |
|||
(One intermediate revision by one user not shown) | |||
Line 78: | Line 78: | ||
− | + | == Configure a Static IP == | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
The ConnMan project provides a daemon for managing internet connections within embedded devices running the Linux operating system. The Connection Manager is designed to be slim and to use as few resources as possible, so it can be easily integrated. It is a fully modular system that can be extended, through plug-ins, to support all kinds of wired or wireless technologies. Also, configuration methods, like DHCP and domain name resolving, are implemented using plug-ins. The plug-in approach allows for easy adaption and modification for various use cases. | The ConnMan project provides a daemon for managing internet connections within embedded devices running the Linux operating system. The Connection Manager is designed to be slim and to use as few resources as possible, so it can be easily integrated. It is a fully modular system that can be extended, through plug-ins, to support all kinds of wired or wireless technologies. Also, configuration methods, like DHCP and domain name resolving, are implemented using plug-ins. The plug-in approach allows for easy adaption and modification for various use cases. | ||
The command line interface is located in the "connman-tests" package already installed. | The command line interface is located in the "connman-tests" package already installed. | ||
+ | So to configure a Static IP we must change to connman directory: | ||
+ | cd /usr/lib/connman/test/ | ||
− | + | and run: | |
− | + | ||
− | + | ./get-services | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | ./get-services | + | |
− | + | ||
− | + | ||
The output should look like the following: | The output should look like the following: | ||
− | + | [ /net/connman/service/ethernet_mac_address_number_cable ] | |
− | [ /net/connman/service/ethernet_mac_address_number_cable ] | + | IPv6.Configuration = { Method=auto Privacy=disabled } |
− | IPv6.Configuration = { Method=auto Privacy=disabled } | + | AutoConnect = false |
− | AutoConnect = false | + | Proxy.Configuration = { } |
− | Proxy.Configuration = { } | + | Name = Wired |
− | Name = Wired | + | Nameservers = [ ip_dns_1 ip_dns_2 ] |
− | Nameservers = [ ip_dns_1 ip_dns_2 ] | + | Provider = { } |
− | Provider = { } | + | Favorite = true |
− | Favorite = true | + | Domains.Configuration = [ ] |
− | Domains.Configuration = [ ] | + | State = online |
− | State = online | + | Proxy = { Method=direct } |
− | Proxy = { Method=direct } | + | Nameservers.Configuration = [ ] |
− | Nameservers.Configuration = [ ] | + | LoginRequired = 0 |
− | LoginRequired = 0 | + | IPv6 = { } |
− | IPv6 = { } | + | Domains = [ lan ] |
− | Domains = [ lan ] | + | Ethernet = { Interface=eth0 MTU=1500 Method=auto |
− | Ethernet = { Interface=eth0 MTU=1500 Method=auto | + | Address=xx:xx:xx:xx:xx:xx } |
− | Address=xx:xx:xx:xx:xx:xx } | + | Security = [ ] |
− | Security = [ ] | + | IPv4.Configuration = { Method=dhcp } |
− | IPv4.Configuration = { Method=dhcp } | + | Type = ethernet |
− | Type = ethernet | + | Immutable = false |
− | Immutable = false | + | IPv4 = { Netmask=255.255.255.0 Gateway=192.168.1.1 |
− | IPv4 = { Netmask=255.255.255.0 Gateway=192.168.1.1 | + | Method=dhcp Address=192.168.1.50 } |
− | Method=dhcp Address=192.168.1.50 } | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
+ | IMPORTANT: The service ID (ethernet_mac_address_number_cable), DNS nameserver and Gateway IP addresses are in the output. | ||
We will change the configuration first of the IP address to 192.168.1.100 by running: | We will change the configuration first of the IP address to 192.168.1.100 by running: | ||
− | ./set-ipv4-method ethernet_mac_address_number_cable manual 192.168.1.100 255.255.255.0 192.168.1.1 | + | ./set-ipv4-method ethernet_mac_address_number_cable manual 192.168.1.100 255.255.255.0 192.168.1.1 |
− | + | ||
For DNS nameservers we run this command: | For DNS nameservers we run this command: | ||
− | ./set-nameservers ethernet_mac_address_number_cable ip_dns_1 ip_dns_2 | + | ./set-nameservers ethernet_mac_address_number_cable ip_dns_1 ip_dns_2 |
− | + | ||
− | |||
− | There is no need of reboot, after this configuration is made, you will always be given the same IP Address to your Nemo System. | + | NOTE: There is no need of reboot, after this configuration is made, you will always be given the same IP Address to your Nemo System. |
Latest revision as of 10:40, 18 June 2013
It's possible to setup Connman based networking without a full-blown GUI tool.
All required tools are in connman-test package, so be sure to include it in your image.
Contents |
[edit] Basic usage
First enable WiFi:
/usr/lib/connman/test/test-connman enable wifi
Wait a moment for scan to settle and list available networks:
/usr/lib/connman/test/test-connman services
Connecting with plain names should work if you do not have unusual characters in the network SSID. If you do, you need to use service identifier like wifi_...
[edit] Connecting using Passphrase agent
On one console (Ctrl-Alt-Fn) or xterm launch simple agent:
/usr/lib/connman/test/simple-agent
and leave it there for now.
On second console/xterm trigger the connection process:
/usr/lib/connman/test/test-connman connect wifi_...
Next switch back to simple-agent console/xterm and type Passphrase=yourpassword at the Answer: prompt, like:
Service credentials requested, type cancel to cancel Answer: Passphrase=yourpassword
In a moment you should have the WiFi network up.
[edit] Pre Provisioned connection
NOTE: more info here: http://git.kernel.org/cgit/network/connman/connman.git/tree/doc/config-format.txt
You can also configure any connection, so you won't have to use simple-agent method above.
Create a .conf file in /var/lib/connman for instance -
vim /var/lib/connman/home-wifi.config
and add an entry such as this:
[service_home_wifi] Type = wifi Name = my_home_wifi Passphrase = secret
or
[service_tls] Type = wifi SSID = 746c735f73736964 EAP = tls CACertFile = /home/user/.certs/ca.pem ClientCertFile = /home/user/devlp/.certs/client.pem PrivateKeyFile = /home/user/.certs/client.fsid.pem PrivateKeyPassphraseType = fsid Identity = user
Please note that the SSID entry is for hexadecimal encoded SSID
and then restart connman sudo systemctl stop connman.service sudo systemctl start connman.service
Now you can use test-connman like above, but without the need of the simple-agent part.
[edit] Configure a Static IP
The ConnMan project provides a daemon for managing internet connections within embedded devices running the Linux operating system. The Connection Manager is designed to be slim and to use as few resources as possible, so it can be easily integrated. It is a fully modular system that can be extended, through plug-ins, to support all kinds of wired or wireless technologies. Also, configuration methods, like DHCP and domain name resolving, are implemented using plug-ins. The plug-in approach allows for easy adaption and modification for various use cases. The command line interface is located in the "connman-tests" package already installed. So to configure a Static IP we must change to connman directory:
cd /usr/lib/connman/test/
and run:
./get-services
The output should look like the following:
[ /net/connman/service/ethernet_mac_address_number_cable ] IPv6.Configuration = { Method=auto Privacy=disabled } AutoConnect = false Proxy.Configuration = { } Name = Wired Nameservers = [ ip_dns_1 ip_dns_2 ] Provider = { } Favorite = true Domains.Configuration = [ ] State = online Proxy = { Method=direct } Nameservers.Configuration = [ ] LoginRequired = 0 IPv6 = { } Domains = [ lan ] Ethernet = { Interface=eth0 MTU=1500 Method=auto Address=xx:xx:xx:xx:xx:xx } Security = [ ] IPv4.Configuration = { Method=dhcp } Type = ethernet Immutable = false IPv4 = { Netmask=255.255.255.0 Gateway=192.168.1.1 Method=dhcp Address=192.168.1.50 }
IMPORTANT: The service ID (ethernet_mac_address_number_cable), DNS nameserver and Gateway IP addresses are in the output.
We will change the configuration first of the IP address to 192.168.1.100 by running:
./set-ipv4-method ethernet_mac_address_number_cable manual 192.168.1.100 255.255.255.0 192.168.1.1
For DNS nameservers we run this command:
./set-nameservers ethernet_mac_address_number_cable ip_dns_1 ip_dns_2
NOTE: There is no need of reboot, after this configuration is made, you will always be given the same IP Address to your Nemo System.