Sponsored Content
Top Forums Shell Programming and Scripting How to extract IPv6 address from string? Post 302899815 by chatguy on Thursday 1st of May 2014 10:12:09 PM
Old 05-01-2014
Hmm... no luck there either. I tried doing a search online, since I thought removing whitespace in a variable would be a common request. I've tried the above and all these with no luck though: (ps, thanks so much for your help so far!!)
Code:
# ifconfig lo0:5 inet6 | /usr/xpg4/bin/awk 'gsub(/inet6 |\/.*/,x)' | sed 's/[[:space:]]//g'
        2620:42::192:168:159:10
# ifconfig lo0:5 inet6 | /usr/xpg4/bin/awk 'gsub(/inet6 |\/.*/,x)' | sed 's/[[:tab:]]//g'
        2620:42::192:168:159:10
# ifconfig lo0:5 inet6 | /usr/xpg4/bin/awk 'gsub(/inet6 |\/.*/,x)'
        2620:42::192:168:159:10
# ifconfig lo0:5 inet6 | /usr/xpg4/bin/awk 'gsub(/inet6 |\/.*/,x)' |  sed 's/ //g'
        2620:42::192:168:159:10
# ifconfig lo0:5 inet6 | /usr/xpg4/bin/awk 'gsub(/inet6 |\/.*/,x)' |  sed 's/\t//g'
        2620:42::192:168:159:10

---------- Post updated at 10:12 PM ---------- Previous update was at 07:32 PM ----------

Got the answer! I've been doing a lot of scouring the Internet for an answer to this one. It seems that every solution I've tried using awk and sed didn't seem to remove the leading whitespace. The following line using perl does work though:
Code:
/sbin/ifconfig lo0:1 inet6 | nawk 'gsub(/inet6 |\/.*/,x)' | perl -lapi -e 's/\s+|^\n//sg'

Thanks so much for the input, guys!
cg
 

10 More Discussions You Might Find Interesting

1. IP Networking

IPv6 UDP server not accepting packets with global address

Hi All, I am running a IPv6 UDP server, which is bound to in6addr_any. When I send a packet from a client to the link-local address of any interface on the linux box, the server accepts the packets. But when I send the packets to the global address the server doesnt pick the packets. On... (0 Replies)
Discussion started by: muralia
0 Replies

2. Programming

validate IPV6 address in windows using c++

I know there is a function inet_tpon for unix platforms to validate ipv6 addresses.But i need an equivalent of windows.When i use this function with the header file <winsock2.h> the visual studio 2005 on win2003 issues an error saying identifier not found :confused: (3 Replies)
Discussion started by: guru13
3 Replies

3. Solaris

IPMP + IPv6 test address

Hi, inspired by this article, I decided to implement IPMP + IPv6 in Solaris 10. It worked for me only this way: 1. Setup # cat /etc/hostname* 10.23.10.113/24 broadcast + group data failover up <- hostname.e1000g0 0.0.0.0/24 broadcast + group data -failover deprecated up standby... (3 Replies)
Discussion started by: masloff
3 Replies

4. Shell Programming and Scripting

Regular expression to extract ipv6 address

Hi all , I have a string in my weblog xheader v6-day-2011:xx:yy:zz:qq:qq:ww:ee:rr My requirement is to lookup the sting v6-day-2011 in this header and if found would like to extract the V6 ip part . v6-day-2011 is always constant for a ipv6 entry so i would like to extract every thing... (4 Replies)
Discussion started by: jambesh
4 Replies

5. HP-UX

configuring site-local IPv6 address

How do I configure site-local IPv6 address in HP-UX box? I can get link local IPv6 address automatically when I put IPv6 up. aps39-88-root# ifconfig lan0 inet6 up (0 Replies)
Discussion started by: kirtikjr
0 Replies

6. BSD

Link Local IPv6 Address

Hi, Am using FreeBSD7.4/i386 During IPv6 configuration, I added the following in rc.conf as Restarted IPv6 network using /etc/rc.d/network_ipv6 restart.. My problem is I need to set link local IPv6 address auto-configured.. Is my proceeding right?? I feel something missing to make... (0 Replies)
Discussion started by: Priya Amaresh
0 Replies

7. Solaris

Assiging "static" IPv6 address for a jumpstart target.

I provision Solaris10 using jumpstart. I know we can enable IPv6 by setting protocol_ipv6=yes in the sysidcfg file. Is there a way to assign Static IPv6 address using sysidcfg/jumpstart method (1 Reply)
Discussion started by: hemalsid
1 Replies

8. IP Networking

IPv6 address block assign/associate with an interface

Hello all, I am trying to receive (tcp/udp/sctp) traffic from all IPs and, eventually, all ports of an IPv6 address block using as few sockets as possible short of implementing my own network stack. One possible solution was to associate an IP block to an interface then bind to that... (6 Replies)
Discussion started by: redwil
6 Replies

9. Red Hat

Find DHCPv6 server's IPv6 address

I want to find out the DHCPv6 server's ip address in the network. I went through the lease files but could find only duid/server-id and not the IPv6 address of the dhcp server. And I couldn't find any commands to get that information. Is there a way to get the DHCPv6 server's IPv6 address? ... (0 Replies)
Discussion started by: bshalini
0 Replies

10. UNIX for Beginners Questions & Answers

What determines DNS will query IPV6 address?

When I do simple nslookup it does not generate any query for IPV6 (AAAA). But sometimes I see DNS query for both A and AAAA are generated. What decides this? The reason I do not want AAAA query is in most of the cases AAAA records are absent. Hence, if one DNS server fails, the clients keeps... (1 Reply)
Discussion started by: broy32000
1 Replies
PFSYNC(4)                                                  BSD Kernel Interfaces Manual                                                  PFSYNC(4)

NAME
pfsync -- packet filter state table logging interface SYNOPSIS
device pfsync DESCRIPTION
The pfsync interface is a pseudo-device which exposes certain changes to the state table used by pf(4). If configured with a physical syn- chronisation interface, pfsync will send state changes out on that interface using IP multicast, and insert state changes received on that interface from other systems into the state table. By default, all local changes to the state table are exposed via pfsync. However, state changes from packets received by pfsync over the network are not rebroadcast. States created by a rule marked with the no-sync keyword are omitted from the pfsync interface (see pf.conf(5) for details). The pfsync interface will attempt to collapse multiple updates of the same state into one message where possible. The maximum number of times this can be done before the update is sent out is controlled by the maxupd parameter to ifconfig (see ifconfig(8) and the example below for more details). Each packet retrieved on this interface has a header associated with it of length PFSYNC_HDRLEN. The header indicates the version of the protocol, address family, action taken on the following states, and the number of state table entries attached in this packet. This struc- ture is defined in <net/if_pfsync.h> as: struct pfsync_header { u_int8_t version; u_int8_t af; u_int8_t action; u_int8_t count; }; NETWORK SYNCHRONISATION
States can be synchronised between two or more firewalls using this interface, by specifying a synchronisation interface using ifconfig(8). For example, the following command sets fxp0 as the synchronisation interface: # ifconfig pfsync0 syncdev fxp0 It is important that the underlying synchronisation interface is up and has an IP address assigned. By default, state change messages are sent out on the synchronisation interface using IP multicast packets. The protocol is IP protocol 240, PFSYNC, and the multicast group used is 224.0.0.240. When a peer address is specified using the syncpeer keyword, the peer address is used as a destination for the pfsync traffic, and the traffic can then be protected using ipsec(4). In such a configuration, the syncdev should be set to the enc(4) interface, as this is where the traffic arrives when it is decapsulated, e.g.: # ifconfig pfsync0 syncpeer 10.0.0.2 syncdev enc0 It is important that the pfsync traffic be well secured as there is no authentication on the protocol and it would be trivial to spoof pack- ets which create states, bypassing the pf ruleset. Either run the pfsync protocol on a trusted network - ideally a network dedicated to pfsync messages such as a crossover cable between two firewalls, or specify a peer address and protect the traffic with ipsec(4). For pfsync to start its operation automatically at the system boot time, pfsync_enable and pfsync_syncdev variables should be used in rc.conf(5). It is not advisable to set up pfsync with common network interface configuration variables of rc.conf(5) because pfsync must start after its syncdev, which cannot be always ensured in the latter case. EXAMPLES
pfsync and carp(4) can be used together to provide automatic failover of a pair of firewalls configured in parallel. One firewall handles all traffic - if it dies or is shut down, the second firewall takes over automatically. Both firewalls in this example have three sis(4) interfaces. sis0 is the external interface, on the 10.0.0.0/24 subnet; sis1 is the internal interface, on the 192.168.0.0/24 subnet; and sis2 is the pfsync interface, using the 192.168.254.0/24 subnet. A crossover cable connects the two firewalls via their sis2 interfaces. On all three interfaces, firewall A uses the .254 address, while firewall B uses .253. The inter- faces are configured as follows (firewall A unless otherwise indicated): Interfaces configuration in /etc/rc.conf: network_interfaces="lo0 sis0 sis1 sis2" cloned_interfaces="carp0 carp1" ifconfig_sis0="10.0.0.254/24" ifconfig_sis1="192.168.0.254/24" ifconfig_sis2="192.168.254.254/24" ifconfig_carp0="vhid 1 pass foo 10.0.0.1/24" ifconfig_carp1="vhid 2 pass bar 192.168.0.1/24" pfsync_enable="YES" pfsync_syncdev="sis2" pf(4) must also be configured to allow pfsync and carp(4) traffic through. The following should be added to the top of /etc/pf.conf: pass quick on { sis2 } proto pfsync pass on { sis0 sis1 } proto carp If it is preferable that one firewall handle the traffic, the advskew on the backup firewall's carp(4) interfaces should be set to something higher than the primary's. For example, if firewall B is the backup, its carp1 configuration would look like this: ifconfig_carp1="vhid 2 pass bar advskew 100 192.168.0.1/24" The following must also be added to /etc/sysctl.conf: net.inet.carp.preempt=1 BUGS
Possibility to view state changes using tcpdump(1) has not been ported from OpenBSD yet. SEE ALSO
bpf(4), carp(4), ifconfig(8), inet(4), inet6(4), ipsec(4), netintro(4), pf(4), pf.conf(5), protocols(5), rc.conf(5) ifconfig(8), ifstated(8), tcpdump(8) HISTORY
The pfsync device first appeared in OpenBSD 3.3. The pfsync device was imported to FreeBSD 5.3. BSD June 6, 2006 BSD
All times are GMT -4. The time now is 10:26 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy